LearnNewsExamplesServices
Frontmatter
id17800
titleCorrect ADR 0040 learn/agentos custody language for the cut manifest
stateClosed
labels
documentationenhancementaiarchitectureagent-os
assigneesneo-opus-vega
createdAtAug 26, 2026, 2:21 PM
updatedAtAug 26, 2026, 2:54 PM
githubUrlhttps://github.com/neomjs/neo/issues/17800
authortobiu
commentsCount0
parentIssue17786
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[ ] 10 Receive Brain-owned learning guides and ADRs, [ ] 17787 Bind the Agent OS cut manifest to the freeze line
closedAtAug 26, 2026, 2:54 PM

Correct ADR 0040 learn/agentos custody language for the cut manifest

Closed Backlog/active-chunk-19 documentationenhancementaiarchitectureagent-os
tobiu
tobiu commented on Aug 26, 2026, 2:21 PM

Context

#17787's AC-4 pins "the merged ADR 0040 correction" as a prerequisite coordinate. The cut manifest cannot bind without it, and three Wave-3 leaves (#17788, #17789, #17791) cannot proceed without the manifest. This is the head of the split's critical path, and until now no open issue owned it — the gap was found by @neo-gpt-emmy while V-B-A'ing D#17782's lane table against executable authority.

Live latest-open sweep: checked the latest 20 open issues at 2026-08-26T12:20:00Z; no equivalent found. A2A in-flight claim sweep over 30 messages (all read-states): no competing [lane-claim] on this scope.

The Problem

ADR 0040 §2.7 reads:

Staying in neomjs/neo in wave one: apps/** (the FM's later home is its own decision), published learn/agentos content and every Portal/SEO/tree input derived from it, resources/content mirrors, src/ai/**, and the minimal Engine contributor surface.

The ADRs themselves live at learn/agentos/decisions/** — inside the very directory that sentence keeps Engine. So "published learn/agentos content" is ambiguous about whether Agent OS decision records and Brain learning guides are Engine-staying published content or Brain substrate. The cut manifest must classify learn/agentos/** rows, and it cannot while one sentence answers both ways.

Two authorities now bear on it and they disagree with §2.7 as written:

  1. Fresh operator direction (2026-08-26, this turn): Brain learning guides, the ADR split, and Brain tests move to the Brain — and that affects CI workflows.
  2. ADR 0040 §5 fires on exactly this: its Revalidation triggers list "custody changes to apps/**, learn/agentos, or src/ai/**" as reopening the record. A learn/agentos custody change is not an edit around the ADR — it is a trigger the ADR itself declares.

#17500 still carries the older all-learn-stays boundary (line 52 keeps learn/agentos Engine in wave one; line 132 lists moving it as Out of Scope). That boundary is superseded by (1) and (2), and this ticket records the supersession rather than quietly diverging from it.

The Architectural Reality

  • learn/agentos/decisions/0040-agentos-extraction-topology.md §2.7 — the ambiguous custody sentence; §5 — the revalidation trigger that fires.
  • #17787 AC-4 — pins the merged correction; a draft or an open PR does not satisfy it.
  • #17783 AC-7 also amends §2.7, scoped to enforcement custody. Two tickets therefore edit one section — whichever merges second rebases rather than clobbers. Flagged here so the collision is known, not discovered.
  • @neo-opus-grace withdrew her §2.7 skill-custody claim as overreach earlier today, so §2.7 is independently known to over-claim; this correction and that withdrawal touch the same section.

The Fix

Amend ADR 0040 so learn/agentos custody is unambiguous for manifest classification:

  1. §2.7 — replace "published learn/agentos content" with a subject-keyed split, applying §2.7's own "custody follows the SUBJECT, not the directory" rule to learn/agentos rather than restating it: guides and decision records whose subject is the Agent OS are extracted-repository custody by exact-identity census; guides and decision records whose subject is the Body or Engine stay in neomjs/neo despite sharing the directory; rendered Portal/SEO/tree inputs and resources/content mirrors stay Engine because their consumer is the published site.

    decisions/ is no exception, and this is the whole point (corrected 2026-08-26 after @neo-gpt-emmy's review of PR #17801): an earlier draft of this ticket made the 40-record decisions directory Brain custody wholesale, which reproduces the location heuristic one level lower. 0029-docking-design.md (multi-window layout, cross-window drag) is filed beside 0027-autonomous-data-recovery-actuator.md (Memory Core); DockZoneModel.md sits beside A2A.md. A blanket directory rule relocates the Body's design records into the Brain.

    §2.7 names the categories and the invariant; it does not enumerate. Exact per-file identities are #17787's cut-manifest census — that is where a mixed corpus gets resolved file by file with evidence.

  2. §5 — record that this revalidation trigger fired and is discharged by this amendment, naming the operator direction as its authority.

Content edit only. No file moves in this ticket.

Decision Record impact

amends ADR 0040 — §2.7 custody boundary and §5 trigger discharge. No new topology is invented; the amendment applies §2.7's existing subject rule to a directory the sentence had treated by location.

Acceptance Criteria

  • AC-1 — §2.7 no longer uses "published learn/agentos content" as one undivided category, and does not replace it with a directory rule. Custody is keyed by subject at every level: Agent-OS-subject guides and decision records are extracted-repository custody by exact-identity census; Body/Engine-subject guides and decision records stay in neomjs/neo despite sharing the same directories; rendered Portal/SEO/tree inputs and resources/content mirrors stay Engine. The section must carry a negative specimen proving decisions/ is not a blanket — a Body-subject record filed beside an Agent-OS one.
  • AC-2 — §5 records the learn/agentos revalidation trigger as fired and discharged, citing the operator direction that fired it.
  • AC-3 — a reader can determine from §2.7 alone which category any learn/agentos/** path falls into and that subject, not location, is the classifier. §2.7 does not owe the per-file enumeration — exact identities are #17787's census, and claiming otherwise would put prose where a file-by-file evidenced census belongs. Demonstrated in the PR against four real tracked paths — a positive and a negative at both the guide and the decision-record level, no placeholders.
  • AC-4#17500's superseded all-learn-stays boundary is reconciled: either its body is truth-synced or this amendment explicitly names it as superseded, so the two do not stand in contradiction.
  • AC-5 — merged, not merely open. #17787 AC-4 pins the merged correction; this ticket is not resolved by an approved PR.

Out of Scope

  • The migration itself. Moving Brain guides and ADRs into neomjs/neo-agent-brain is a separate one-PR Brain-receive leaf (successor, still to be filed); #17791 owns the eventual Neo-side removal. This ticket makes the boundary decidable; it moves nothing.
  • Brain test migration and the CI-workflow consequences the operator named alongside the ADR split — same successor family, not this leaf.
  • §2.7's enforcement-custody clause — #17783 AC-7.
  • Portal/SEO/tree input custody — stays Engine, unchanged.

Avoided Traps

  • Fusing correction with migration. One leaf doing both would have blocked #17787's fast unblock behind a cross-repo multi-PR move, and would have inflated a content edit into a custody transfer. Two repo-owned leaves are simpler than one cross-repo ticket (@neo-gpt-emmy's convergence).
  • Diverging from #17500 silently. Its boundary genuinely conflicts; AC-4 forces reconciliation instead of leaving two contradictory authorities standing.
  • Editing §2.7 blind to #17783. Two tickets amend one section; naming it here beats a merge-time surprise.

Related

#17787 (pins the merged correction) · #17786 (parent) · #17788 · #17789 · #17791 · #17783 (also amends §2.7) · #17500 (superseded boundary) · D#17782 · ADR 0040

Origin Session ID: 8cfe8ea9-113f-4e32-a3f4-822ee92ff721

Retrieval Hint: query_raw_memories("ADR 0040 §2.7 learn/agentos custody ambiguity cut manifest unblock")

tobiu added the documentation label on Aug 26, 2026, 2:21 PM
tobiu added the enhancement label on Aug 26, 2026, 2:21 PM
tobiu added the ai label on Aug 26, 2026, 2:21 PM
tobiu added the architecture label on Aug 26, 2026, 2:21 PM
tobiu added the agent-os label on Aug 26, 2026, 2:21 PM
tobiu referenced in commit aeed7ee - "learn/agentos custody splits by subject, not directory (#17801) on Aug 26, 2026, 2:54 PM
tobiu closed this issue on Aug 26, 2026, 2:54 PM