SIGN IN SIGN UP

docs(m175): the Rust port supports the current lease wire only

Addendum A1 + A2 (Indy, Aug 23, 2026), landed as spec edits before the Rust
that would otherwise inherit the shim.

A1 — M175 §3 gains a declared exclusion list whose only entry is
protocol_lease_v1. contract.zig:16 re-exports it, so an unqualified "every
exported type gets a fixture" rule would emit a version-one fixture and
afd_wire would grow a version-one serde type to round-trip it — the exact
outcome the addendum exists to prevent. Dimension 3.1 is scoped to
current-shape types and now asserts the exclusion list too, so an accidental
re-admission fails test_fixture_set_complete instead of silently passing.
Rubric R2 absorbs that proof rather than the table growing a row.

Evidence recorded in Discovery: commit 312e09ced introduced both wire-version
constants together, the in-tree runner posts the current request
unconditionally, and no in-tree path emits version one. The stop condition is
clear — zero releases and zero tags, so no runner artifact of any vintage is
deployed.

A2 — M181 replaces parity-first with single-implementation parity: the port
implements one implementation of each behaviour, the current one, and a
superseded path meeting the evidence bar is left with the daemon it retires
with. M181 §4 gains the declared-divergence register, its first entry the
lease-wire asymmetry. M177 propagates the no-negotiation rule to the lease
handler and the current-shape-only scenario set; M178 and M179 have their
"pure port" lines bounded so they cannot be read as forcing a superseded path
to be reproduced.

The Zig daemon is not modified.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
K
Kishore Kumar committed
67c3323faee1a5994d373dd11c7944d7ffdea1cb
Parent: bf5a28d