open-standards/joule-code/joule-code-rs/Cargo.toml
Transaction Science 2c30feaa2a joule-moq-relay: a MOQT draft-22 relay over native QUIC, WebTransport and a WebSocket fallback
A new crate in the joule-code workspace, library and binary:

- transports behind one interface: native QUIC (ALPN moqt-22) and WebTransport
  over HTTP/3 (ALPN h3, WT-Available-Protocols) on one quinn endpoint, and a
  WebSocket binding whose messages are draft-ietf-webtrans-http2-15 capsules;
- the relay: SETUP, PUBLISH_NAMESPACE, SUBSCRIBE_NAMESPACE, PUBLISH, SUBSCRIBE
  from an upstream it holds or makes, RENDEZVOUS_TIMEOUT, FETCH and fills from
  the cache or upstream, TRACK_STATUS, REQUEST_UPDATE, GOAWAY, Request ID rules,
  MAX_REQUEST_UPDATES, the authorization-token alias cache;
- a per-session scheduler in section 5.1.2's order with delivery timeouts at
  this hop; receipts tracks carry none;
- receipts checked at the door per namespace, and signed session summaries.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-17 04:33:00 -04:00

49 lines
1.5 KiB
TOML

[workspace]
resolver = "2"
members = [
"crates/joule-code-schema",
"crates/joule-code-cargo",
"crates/joule-code-receipt",
"crates/joule-code-cascade",
"crates/joule-code-collab",
"crates/joule-code-conformance",
"crates/joule-code-jcp",
"crates/joule-code-joulecontract",
"crates/joule-code-spec",
"crates/joule-code-review",
"crates/joule-code-remediate",
"crates/joule-code-release",
"crates/joule-code-reviewer",
"crates/joule-code-identity",
"crates/jwp",
"crates/joule-moq",
"crates/joule-moq-relay",
"crates/lockstep-quic",
]
[workspace.package]
version = "0.2.0"
edition = "2021"
license = "Apache-2.0"
repository = "https://github.com/transaction-science/open-standards"
rust-version = "1.97"
[workspace.dependencies]
joule-code-schema = { path = "crates/joule-code-schema" }
joule-code-spec = { path = "crates/joule-code-spec" }
joule-code-review = { path = "crates/joule-code-review" }
joule-code-release = { path = "crates/joule-code-release" }
joule-code-reviewer = { path = "crates/joule-code-reviewer" }
joule-code-identity = { path = "crates/joule-code-identity" }
joule-code-cargo = { path = "crates/joule-code-cargo" }
joule-code-receipt = { path = "crates/joule-code-receipt" }
joule-code-cascade = { path = "crates/joule-code-cascade" }
blake3 = "1"
ed25519-dalek = "2"
ciborium = "0.2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
base64 = "0.22"
hex = "0.4"
thiserror = "2"