v2026.5.16: SPEC-029 sendability enforcement
v2026.5.16: SPEC-029 sendability enforcement
Section titled “v2026.5.16: SPEC-029 sendability enforcement”Janus now enforces the SPEC-029 sendability rule before the actor wire path
ships. Proven actor, channel, and mailbox .send(...) calls are checked by
the compiler:
ref Tcannot cross the send boundary. The compiler emits E2801.iso Tcan cross the boundary, and the binding is consumed by the send.- A later read of that consumed
isobinding emits E2802. val Tandtag Tare sendable.
The check is intentionally bounded to proven send boundaries. A normal method
named send on an unrelated object is not treated as an actor or channel send.
This is not a Serialize trait gate. Janus actor sendability comes from
reference capabilities and, for future wire transport, SBI-compatible layout.
The current local actor runtime still lowers only unit message variants through
the i64 actor mailbox ABI; payload-bearing actor envelopes remain the next
typed mailbox step.
Verification gates
Section titled “Verification gates”./scripts/zb test-intent-enforcement./scripts/zb test-diagnostics-intents./scripts/zb test-capability./scripts/zb test-parser-cap-seam./scripts/zb test-spec-085-pipeline