From 85bf45408fcbfe00f9537b6e2b52990472010217 Mon Sep 17 00:00:00 2001 From: Steven Enamakel Date: Sat, 26 Sep 2026 02:08:45 +0530 Subject: [PATCH 1/6] feat: expose linked TinyBrowser module --- crates/tinybrowser/Cargo.toml | 1 + crates/tinybrowser/src/lib.rs | 4 ++++ crates/tinybrowser/src/tinybus_module/mod.rs | 2 +- vendor/tinybus | 2 +- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/crates/tinybrowser/Cargo.toml b/crates/tinybrowser/Cargo.toml index f9150ac..0a15aee 100644 --- a/crates/tinybrowser/Cargo.toml +++ b/crates/tinybrowser/Cargo.toml @@ -71,6 +71,7 @@ futures-util = { version = "0.3", default-features = false, features = ["sink", [features] default = [] +linked = [] [lints] workspace = true diff --git a/crates/tinybrowser/src/lib.rs b/crates/tinybrowser/src/lib.rs index 6872139..e70e93d 100644 --- a/crates/tinybrowser/src/lib.rs +++ b/crates/tinybrowser/src/lib.rs @@ -103,6 +103,10 @@ mod snapshot; pub mod tinybus_module; +/// Constructs this module for registration with an in-process TinyBus host. +#[cfg(feature = "linked")] +pub use tinybus_module::exports::linked_module; + pub use engine::Browser; pub use error::{Error, Result}; diff --git a/crates/tinybrowser/src/tinybus_module/mod.rs b/crates/tinybrowser/src/tinybus_module/mod.rs index 2aeb17c..3d663aa 100644 --- a/crates/tinybrowser/src/tinybus_module/mod.rs +++ b/crates/tinybrowser/src/tinybus_module/mod.rs @@ -199,7 +199,7 @@ async fn setup(connection: Connection) -> BusResult<()> { unreachable_pub, reason = "generated C ABI symbols are documented by the TinyBus module SDK" )] -mod exports { +pub(crate) mod exports { tinybus_module::module_export! { setup = super::setup, // Two threads: one to serve calls, one so a long navigation does not diff --git a/vendor/tinybus b/vendor/tinybus index 6ee8258..65f1598 160000 --- a/vendor/tinybus +++ b/vendor/tinybus @@ -1 +1 @@ -Subproject commit 6ee8258c03eb442aca8225d328d3c8e7c5489af6 +Subproject commit 65f1598a227d9caf853f1f9840cdc6477be432f3 From cd4fe0ebc5bec861a303b277699d3333367343dc Mon Sep 17 00:00:00 2001 From: Steven Enamakel Date: Sat, 26 Sep 2026 02:12:50 +0530 Subject: [PATCH 2/6] fix: resolve TinyBus through registry version --- Cargo.toml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 1790ea6..1d8bce2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -37,13 +37,14 @@ tinybrowser = { path = "crates/tinybrowser" } # TinyBus defines the message types, interface macro, and frozen module ABI # used by the generated integration. Socket and CLI features are unnecessary # here. -tinybus = { path = "vendor/tinybus/crates/tinybus", version = "0.1.0", default-features = false, features = [ +tinybus = { version = "=0.1.2", default-features = false, features = [ "macros", "modules", ] } # The module-side SDK owns the isolated runtime and exports the ABI entrypoints # required by TinyBus's dynamic loader. -tinybus-module = { path = "vendor/tinybus/crates/tinybus-module", version = "0.1.0" } +tinybus-module = "=0.1.2" + # Jev makes bounded, typed decisions for the agentic browser-control loop. It is # pinned by the `vendor/tinyjevclient` gitlink so its wire behavior is reviewed # together with each update. @@ -95,3 +96,7 @@ private_intra_doc_links = "warn" lto = "thin" codegen-units = 1 strip = "debuginfo" + +[patch.crates-io] +tinybus = { path = "vendor/tinybus/crates/tinybus" } +tinybus-module = { path = "vendor/tinybus/crates/tinybus-module" } From 4c4dc2adba47230fc2cd907b5cf244cb5b0afaa8 Mon Sep 17 00:00:00 2001 From: Steven Enamakel Date: Sat, 26 Sep 2026 02:14:11 +0530 Subject: [PATCH 3/6] fix: resolve TinyJevClient through versioned dependency --- Cargo.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 1d8bce2..c8f5e44 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,7 +48,7 @@ tinybus-module = "=0.1.2" # Jev makes bounded, typed decisions for the agentic browser-control loop. It is # pinned by the `vendor/tinyjevclient` gitlink so its wire behavior is reviewed # together with each update. -tinyjevclient = { path = "vendor/tinyjevclient/crates/tinyjevclient" } +tinyjevclient = "=0.2.1" # Derive macros for the crate-wide error type in `crates/template/src/error/`. # Every dependency entry should carry a comment like this one saying why it is # here. @@ -100,3 +100,4 @@ strip = "debuginfo" [patch.crates-io] tinybus = { path = "vendor/tinybus/crates/tinybus" } tinybus-module = { path = "vendor/tinybus/crates/tinybus-module" } +tinyjevclient = { path = "vendor/tinyjevclient/crates/tinyjevclient" } From 1b0d4d5867a9c2ff439be8a6df4def87ce9738ad Mon Sep 17 00:00:00 2001 From: Steven Enamakel Date: Sat, 26 Sep 2026 02:21:15 +0530 Subject: [PATCH 4/6] docs: update TinyBus linked module pin --- vendor/tinybus | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/tinybus b/vendor/tinybus index 65f1598..ad60ac1 160000 --- a/vendor/tinybus +++ b/vendor/tinybus @@ -1 +1 @@ -Subproject commit 65f1598a227d9caf853f1f9840cdc6477be432f3 +Subproject commit ad60ac17da0fc92b8eb410aeaff3274435e5bcb1 From 0be0b9fd476a2c7c8e0db064e4086e6e8a2e2632 Mon Sep 17 00:00:00 2001 From: Steven Enamakel Date: Sat, 26 Sep 2026 02:27:01 +0530 Subject: [PATCH 5/6] fix: update TinyBus manifest cache pin --- vendor/tinybus | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/tinybus b/vendor/tinybus index ad60ac1..b0b02e7 160000 --- a/vendor/tinybus +++ b/vendor/tinybus @@ -1 +1 @@ -Subproject commit ad60ac17da0fc92b8eb410aeaff3274435e5bcb1 +Subproject commit b0b02e74ff108288093b59ef5f6fa06720174c3e From 1aa1dca1ced9bd6db5c5cfd2c55dd0eec569f166 Mon Sep 17 00:00:00 2001 From: Steven Enamakel Date: Sat, 26 Sep 2026 02:39:53 +0530 Subject: [PATCH 6/6] feat: select static TinyBus module exports --- crates/tinybrowser/Cargo.toml | 3 ++- crates/tinybrowser/src/lib.rs | 2 +- crates/tinybrowser/src/tinybus_module/mod.rs | 2 +- vendor/tinybus | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/crates/tinybrowser/Cargo.toml b/crates/tinybrowser/Cargo.toml index 0a15aee..90e5d33 100644 --- a/crates/tinybrowser/Cargo.toml +++ b/crates/tinybrowser/Cargo.toml @@ -71,7 +71,8 @@ futures-util = { version = "0.3", default-features = false, features = ["sink", [features] default = [] -linked = [] +linked = ["static-link"] +static-link = [] [lints] workspace = true diff --git a/crates/tinybrowser/src/lib.rs b/crates/tinybrowser/src/lib.rs index e70e93d..8415d64 100644 --- a/crates/tinybrowser/src/lib.rs +++ b/crates/tinybrowser/src/lib.rs @@ -104,7 +104,7 @@ mod snapshot; pub mod tinybus_module; /// Constructs this module for registration with an in-process TinyBus host. -#[cfg(feature = "linked")] +#[cfg(feature = "static-link")] pub use tinybus_module::exports::linked_module; pub use engine::Browser; diff --git a/crates/tinybrowser/src/tinybus_module/mod.rs b/crates/tinybrowser/src/tinybus_module/mod.rs index 3d663aa..a55c682 100644 --- a/crates/tinybrowser/src/tinybus_module/mod.rs +++ b/crates/tinybrowser/src/tinybus_module/mod.rs @@ -200,7 +200,7 @@ async fn setup(connection: Connection) -> BusResult<()> { reason = "generated C ABI symbols are documented by the TinyBus module SDK" )] pub(crate) mod exports { - tinybus_module::module_export! { + tinybus_module::module_export_optional_static! { setup = super::setup, // Two threads: one to serve calls, one so a long navigation does not // block the call that would close the session it is stuck in. diff --git a/vendor/tinybus b/vendor/tinybus index b0b02e7..433d9ed 160000 --- a/vendor/tinybus +++ b/vendor/tinybus @@ -1 +1 @@ -Subproject commit b0b02e74ff108288093b59ef5f6fa06720174c3e +Subproject commit 433d9ed088597d21c48706e397b149fff04855cd