feat(pvm): expose standalone runtime through host bridge - #540
feat(pvm): expose standalone runtime through host bridge#540replghost wants to merge 50 commits into
Conversation
7f73849 to
f6457f1
Compare
|
@pgherveou @eugypalu all required checks are green, including Rust/Clippy, Android, iOS, browser artifacts, and license policy. Could one of you provide the required host-sdk-team approval so the merge queue can admit this dependency? |
pgherveou
left a comment
There was a problem hiding this comment.
can we remove the generated files in the new js packages. Can't these be built from the src files ?
for the new bindings we can also added then to .gitattributes with linguist-generated=true, so that at least they show up as generated artifacts in the code review
|
Addressed in b0e178e: removed the committed browser |
|
Cleanup CI is fully green; ready for rereview and merge queue admission. |
|
DQ: why do all these things need to live in host-rust-core, they don't seem to have dependency on the rust-core stuff, and could be shipped independently ? |
b0e178e to
e0f05c4
Compare
|
They share the Rust core directly rather than only co-locating artifacts:
They could be split, but that would duplicate the Rust source/pins and create independent browser, XCFramework, and AAR versioning with an ABI-drift boundary. Keeping the runtime here makes the host-neutral Rust implementation the single source for all three targets; Epoca/Dotli/Brevity/Desktop remain independent consumers. |
|
Does that shared Rust/UniFFI dependency path resolve the repository-placement concern, or do you want the runtime split into a separate repository before merge? |
|
Additional review completed. Fixed three concrete boundary issues:
Added behavioral browser tests for malformed launch inputs and cross-profile framebuffer submission. Full workspace result: 1,205 tests passed, Clippy Vendored commit |
|
PolkaVM dependency update:
|
|
The repository-placement concern is now resolved by the extraction:
Generated browser output remains source-built and verified in the standalone repository; committed Swift/FFI bindings are marked generated. The full bridge matrix is green. |
de7560d to
8daab08
Compare
8daab08 to
5e04221
Compare
…nto integrate/pr540-motion # Conflicts: # Cargo.lock
| default = ["wasm-signing-host"] | ||
| wasm-signing-host = [] | ||
| ws-bridge = ["dep:tokio", "dep:tokio-tungstenite", "dep:rand", "dep:base64"] | ||
| native-pvm-gpu = ["truapi-pvm-host/native-gpu"] |
There was a problem hiding this comment.
this feel like the wrong place to put these dep.
I would rather see one crate that we expose, that depends on truapi-server and native-pvm-gpu
Summary
truapi-pvm-hostas the thin reviewed integration boundary for the standalone PolkaVM runtimepvm-host-runtimev0.1.8 at530885a9d6dbf5a2742d4f2ff9f5c71b05f2a762Runtime boundary
The runtime implementation, browser workers, deterministic assets, ABI documentation, and conformance tests live in
paritytech/pvm-host-runtime. This PR retains only the bridge, immutable pin, UniFFI/server wiring, and browser asset exporter.Verification
Consumers