The bridge, and a contract change that went out unannounced

<shared>\obscene-orbistoun-bridge.md already existed - a shared log between the two sessions, set up so neither has to relay by hand. I had reported that nothing was shared with the sibling; that was wrong, and reading the log before posting is what caught the rest of this.

A value the consumer renders changed this morning without being announced. D147 replaced sysinfo|generation values 5 (current) / 4 (previous) with 5 (agc) / 4 (gnm). The consumer's own bridge entry says it renders 4 (previous) explicitly, so the change lands on their display. Under the open-enum rule the two sides agreed, an added value is safe and a changed one is exactly the case that rule does not cover - so it needed saying and did not get said.

Two documents were stale with it, both of them contracts rather than prose: docs/OUTPUT.md, which is the format contract the consumer parses against, and docs/CLIENT.md, which is the copyable client guide. Both still documented the retired strings. Changing a value in sysinfo.c and leaving the contract describing the old one is the same drift the audit found this morning, committed hours after finding it.

The renames crossed a boundary the new gate cannot see. doccheck.py now fails on a pointer to a missing document, which is what made the HANDOVER-ORBISTOUN-NET.mdCLIENT.md rename safe inside this repo. The bridge file lives under <shared> and is owned by neither repo, and its own instructions still name the old path. Flagged in the log rather than edited, since neither side rewrites the other's text - but worth recording that a gate stops at the repository boundary and cross-repo references do not.

Also answered a question the consumer left open: sysinfo|listening is the server's state in a record kind framed as the target's account of itself. Taking their lighter option - the contract now says a consumer rendering machine identity may filter it, and why - rather than adding a record kind for one field.