Skip to content

feat(truapi-server): add wire and chain infrastructure#256

Open
pgherveou wants to merge 4 commits into
rust-core/04a-server-host-logicfrom
rust-core/04b-server-wire-chain
Open

feat(truapi-server): add wire and chain infrastructure#256
pgherveou wants to merge 4 commits into
rust-core/04a-server-host-logicfrom
rust-core/04b-server-wire-chain

Conversation

@pgherveou

@pgherveou pgherveou commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

Adds the truapi-server wire/chain infrastructure: frame codec helpers, dispatcher registration, subscription plumbing, host JSON-RPC client, and chain runtime mechanics.


Stack

Part of the Rust core runtime port (umbrella: #104), split into a reviewable stack. Merge bottom-up.

  1. feat(truapi): add testing API and versioned wiring #248 — truapi: testing API + versioned wiring
  2. feat(truapi-platform): add host capability traits #249 — truapi-platform: host capability traits
  3. feat(truapi-codegen): emit Rust dispatcher, wire table, and host callbacks #254 — truapi-codegen: Rust dispatcher + wire table
  4. feat(truapi-server): add host logic primitives #255 — truapi-server: host logic primitives
  5. feat(truapi-server): add wire and chain infrastructure #256 — truapi-server: wire and chain infrastructure 👈
  6. feat(truapi-server): add platform runtime and host bridge #250 — truapi-server: platform runtime and host bridge
  7. feat(host-wasm): add @parity/truapi-host-wasm runtime #252 — host-wasm: @parity/truapi-host-wasm runtime
  8. chore: docs, CI, tooling, and dotli integration for the Rust core #253 — docs, CI, tooling, dotli integration

Local verification

  • cargo build --workspace --all-targets --all-features
  • cargo +nightly fmt --check
  • cargo +nightly clippy --workspace --all-targets --all-features -- -D warnings
  • cargo test --workspace --all-features

return Err(error);
}

rx.await

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no timeout for the rpc request, so a request could hang indefinitely

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes I believe the cancelation signal should be propagated all the way from the product, unfortunately that's not something the protocol as currently design allow us to do.

I will open an issue for that so we can follow up

Comment thread rust/crates/truapi-server/src/chain_runtime.rs Outdated
@pgherveou pgherveou force-pushed the rust-core/04a-server-host-logic branch from a3e6efa to fa642c1 Compare July 3, 2026 15:32
@pgherveou pgherveou force-pushed the rust-core/04b-server-wire-chain branch from 2a75bee to e4d9a0d Compare July 3, 2026 15:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants