LearnNewsExamplesServices
Frontmatter
id13217
titleDocument the Extended-NL multi-writer enforcement architecture (learn/agentos/)
stateClosed
labels
documentationaiarchitecture
assigneesneo-opus-ada
createdAtJun 14, 2026, 12:51 PM
updatedAtJun 14, 2026, 3:53 PM
githubUrlhttps://github.com/neomjs/neo/issues/13217
authorneo-opus-ada
commentsCount0
parentIssue13056
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJun 14, 2026, 3:53 PM

Document the Extended-NL multi-writer enforcement architecture (learn/agentos/)

Closed v13.1.0/archive-v13-1-0-chunk-2 documentationaiarchitecture
neo-opus-ada
neo-opus-ada commented on Jun 14, 2026, 12:51 PM

Context

Sub-leaf of #13056 (Extended-NL coordination). The multi-writer write-enforcement subsystem now spans five composable components — LockRegistry (#13125), WriteGuard (#13134), deriveSubtreePath (#13138), parseAgentEnvelope (#13174), resolveWriteLock (#13207/PR #13208) — plus the planned InstanceService write-path wiring (#13167 Leaf B/C). V-B-A (2026-06-14): grep -rl 'WriteGuard|LockRegistry' learn/zero — the architecture exists only as scattered per-file JSDoc + the #13167 ticket (ephemeral). There is no consolidated, KB-queryable architecture doc.

The Problem

A future agent asking "how does multi-writer write enforcement work in Neo?" (via ask_knowledge_base / learn/) gets nothing — only code. The wiring-builder, cross-family reviewers, and future maintainers must reconstruct the design from 5 files + a ticket. The held-until-release (agentId, sessionId)-keyed subtree-lock model, the fail-closed discipline, and the frame→parse→context→decision→guard→mutate/deny data flow deserve a durable Anchor-&-Echo home.

The Fix

A focused learn/agentos/ architecture doc (sibling to HarnessDockZoneModel.md): the problem (co-habited-heap write corruption), the model (held-until-release subtree locks keyed on the (agentId, sessionId) writer pair), the per-layer roles, the data flow, the fail-closed discipline, and an explicit STATUS section (primitives merged on dev; resolveWriteLock approved in #13208; write-path wiring + disconnect-sweep pending under #13167). Add to learn/tree.json (mirrors-folder). Status-marking keeps it honest while the subsystem is ~80% built.

Acceptance Criteria

  • learn/agentos/<name>.md documents the 5 components + the planned wiring, the (agentId, sessionId) held-until-release lock model, the data flow, and fail-closed discipline.
  • A prominent STATUS section distinguishes merged primitives from pending wiring (no implication that enforcement is live before the wiring lands).
  • learn/tree.json updated to mirror the new file (folder-mirror invariant).
  • No drift: documents the decided design (#13167 contract) + merged primitives, not unmerged implementation detail.

Out of Scope

  • The wiring itself (#13167 Leaf B/C) and the disconnect-sweep — this documents, does not implement.
  • The Bridge auth transport (Grace's Leaf A, already merged + documented in-ticket).

Related

  • Parent #13056; consumes the #13167 contract-of-record. Sibling doc pattern: learn/agentos/HarnessDockZoneModel.md.

Live latest-open sweep: gh issue list "document … WriteGuard/enforcement" → no equivalent open doc ticket (the hits are the implementation tickets, not a doc).

Release classification: post-release (Agent Harness KB substrate; nothing v13.x-blocking).

Authored by @neo-opus-ada (Ada, Claude Opus 4.8 [1M context]) — origin session 4c598c8f-d8a7-4288-9420-e825a45d310e.