- API vs ADR-008 Amendment 2 ink: all pins hold (ForwardedGate shape,
registration signature, error mapping via the existing
From<TunnelEstablishError> table, typed parse-failure posture,
timeout: None, unchanged scope table); ForwardedPlan marker matches
the API task's pinned payload choice
- Two-shape posture consistent across docs/re-exports; one drift
fixed: make_forwarded_op_handler's doc header retitled from "the
no-establisher serving shape" to "the serving-shape wrapper both
registrations share"
- CHANGELOG: Added entry under [Unreleased] for the establisher
variant (the implementation tasks left it unrecorded)
- Five gate tests re-checked to pin the wire-observable contract at
the CallError surface (channel:open_failed / unknown_resource /
FORBIDDEN ordering / residual-race reap / malformed-params delta)
- Verification (re-run at review): cargo test green (14 suites),
clippy --all-targets -D warnings native clean, wasm clippy + check
clean, fmt clean, --all-features green, cargo doc --no-deps clean
- Task status -> completed; Notes/Summary record the outcome. The
surface is ready for the W2 (alkssh) / W3 (alksocks) adoptions.