docs(agents): collapse §2/§3 restated mechanics to their SSOT owners - #2499
Open
Nikita-Guzenko wants to merge 1 commit into
Open
docs(agents): collapse §2/§3 restated mechanics to their SSOT owners#2499Nikita-Guzenko wants to merge 1 commit into
Nikita-Guzenko wants to merge 1 commit into
Conversation
Sections 2 and 3 restated field-lists and step-by-step digest mechanics that
their real owners already hold, so this compacts only that duplication via
pointer-collapse and leaves every other section byte-for-byte untouched.
§2 (12.7KB -> 11.5KB): each config/*, data/*, state/* entry keeps its one-line
purpose plus every safety flag (LOCAL, gitignored, NOT inherited, never touch,
read-only, fails closed), while the selection/inheritance/provenance mechanics
collapse to the owner named in the line - docs/configuration.md "Harness
support" / "Crew dispatch profiles" / "Backlog backend" / "Runtime backend" /
"Startup memory budget", docs/herdr-backend.md, docs/cmux-backend.md,
docs/wedge-alarm.md, fm-pending-reply-lib.sh, and fm-startup-network.sh.
§3 (7.4KB -> 4.1KB): the 7-step digest-content enumeration collapses to a
pointer to bin/fm-session-start.sh's header, which owns the exact ordering and
each section's contents. Every operator invariant is preserved: lock-first,
mutating sweeps and network checks run only when locked, lock-refused stays
read-only, the wake queue is presented once (section 8 owns handling and
acknowledgement), one supervision block is emitted, endpoint liveness is a
presence check only, and ABSENT/read-only semantics stay above.
No safety note dropped; the two removed safety-token occurrences are
guard-output UX ("read-only advisory") and sweep mechanics ("failed
guarantees"), both owned by fm-bootstrap.sh. doc-audience check and fm-lint.sh
pass; no test asserts the changed prose.
This was referenced Aug 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
SSOT pointer-collapse of the restated mechanics in AGENTS.md §2 (Layout and state) and §3 (Session start) only. Every other section is byte-for-byte unchanged (
git difftouches lines 67-78, 84-85, 107, 116 in §2 and 155-173 in §3).Before → after
The lever
§2's own intro already names the owner ("
docs/configuration.mdis the single owner … each producing script's header and help own exact child fields and mutation mechanics") and §3's intro already names "bin/fm-session-start.sh… the single owner of composed commands, ordering, and digest contents." The per-entry field-lists and the 7-step digest enumeration were duplicating those owners. This collapses that duplication to a pointer while keeping the map usable and every safety note.Pointers introduced (each verified to contain the moved content)
§2 config/data/state entries — each keeps its one-line purpose + every safety flag; mechanics point to:
config/crew-harness,config/secondmate-harness→docs/configuration.md"Harness support" (owns default-mirroring, the secondmate-crewmate inheritance, the fallback chain, and "not inherited because secondmates do not launch secondmates").config/crew-dispatch.json→docs/configuration.md"Crew dispatch profiles".config/backlog-backend→docs/configuration.md"Backlog backend".config/backend→docs/configuration.md"Runtime backend" (owns selection order and accepted/rejected values incl. codex-app rejection).config/calm,config/startup-memory-budget,config/trace-context→docs/configuration.md"Pi Calm preference" / "Startup memory budget" / "Trace context propagation".config/herdr-presentation-spaces→docs/herdr-backend.md"Presentation spaces";config/cmux-socket-password→docs/cmux-backend.md"Setup";config/wedge-alarm→docs/wedge-alarm.md.data/projects.md,data/secondmates.md→ section 6 (dropped "parsed/maintained by <script>" provenance).state/pending-replies/→fm-pending-reply-lib.sh+docs/configuration.md(dropped the field list);state/.startup-network.*→fm-startup-network.sh(dropped the field list).§3 — the 7-step digest enumeration →
bin/fm-session-start.sh's header, which owns the exact ordering and each section's contents (its header even states it "Collapses AGENTS.md sections 3 and 5 into ONE script"). The step narration duplicated the wake-queue handling contract, which section 8 owns (drain, OPEN DECISIONS, UNREAD STATUS,--ack-throughdurability).Invariants preserved (not dropped)
bin/fm-crew-state.shfor real state.ABSENTmarker semantics kept above (§3 line 146).Safety confirmation
Safety-token counts across the changed §2/§3 region are unchanged:
LOCAL, gitignored17→17,never touch5→5,NOT inherited/not inheritedpreserved,firstmate-private2→2, and thebin/fm-send.shfails closed note is intact. The only two removed safety-token occurrences are guard-output UX ("read-only advisory" wording) and sweep mechanics ("skipped or failed guarantees" forSECONDMATE_LIVENESS), both owned bybin/fm-bootstrap.shand routed viabootstrap-diagnostics; the lock-refused read-only invariant they described is fully retained at §3 line 149. Every "never touch" / security / trust / quarantine / provenance line in thestate/tree (check.sh, procevent, pr-poll-*, autoarm/cursor internals) is verbatim.Verification
git diffconfined to §2/§3; all other sections identical.bin/fm-doc-audience-check.sh→ ok (68 surfaces, 253 local links).bin/fm-lint.sh→ clean (no changed lint targets).🤖 Generated with Claude Code
https://claude.ai/code/session_01PEwdqRzwcC2Zmrk6SrbST1