Skip to content

Correct Claude team mechanics and stale feature dispositions - #813

Merged
seathatflowsinourveins merged 2 commits into
mainfrom
codex/ns2604-stale-carriers-20261006
Oct 7, 2026
Merged

seathatflowsinourveins merged 2 commits into
mainfrom
codex/ns2604-stale-carriers-20261006

Conversation

@seathatflowsinourveins

@seathatflowsinourveins seathatflowsinourveins commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Scope

Correct the workflow guide's teammate-effort and 5.5 task-list statements, and update only the eight named feature dispositions from the CC feature check. The applied agent-teams switch is recorded as enabled with rule18's narrow scope; the catalog enum and resolver are unchanged.

SOTA sources

  • anthropics/claude-code, tag v2.1.292 / commit fbe20e00e2851fc01506f54f98a8f0b875af3847: 2.1.288 effort fix atL365 applies explicitly to plugin-defined agents; 2.1.233L2985 and2.1.268L1986 withdraw Task tools on newer models with TODO opt-in; 2.1.292L76 sets stdio protocol negotiation's default; 2.1.287L421 introduces the built-in mod.
  • Agent-teams docs, read2026-10-06: L277 definition effort for in-process teammates, L107–111 default display. Matching max declarations do not prove runtime effort.
  • Hooks, read2026-10-06: L2455–2457 TaskCreated heading/tool dependency, L2509–2513 TaskCompleted definition, L2699–2728 TeammateIdle and exit2 control. These exact ranges were checked manually against the official Markdown because HTTPS citations bypass the local exact-key assertion; SHA256 fde586c999b304e33a9958ae5103b35028fe6910a8d0b5db3111ada72103fa96.
  • Environment variables, L293 agent-team switch; cross-session messaging, L191–199 inbound policy; built-in mods, L236 explicit enable. All read2026-10-06.

Authority and observed configuration come from coordination/e2e-truth-20261006/feature-gap-wf_2da8a9ff-307.json#/result/final and command-center/cc-tools/CC-RULES-ADDENDUM-20261006.md, rule18. Co-op A5 (2026-10-06) confirms that “adopted narrowly” uses the existing enabled disposition, with scope/reason/overturn, rather than a new enum. The row's direct upstream URL remains in source; the rule file is cited in reason because the source grammar accepts one URL/path citation.

Named row changes

J813's three review findings are fixed: the mod carrier points to the new-WSL additions file that actually enables it; hook sources use exact ranges with withdrawal context retained in TaskCompleted's reason; rule18 fragments appear in reason, scope and overturn. Enabled states and unknown activity/cost attribution are preserved.

Row Result
Agent-team env switch enabled; narrow CC-led rule18 scope, at most three teammates, writes forbidden by brief
TeammateIdle adopt-pending for the post-first-real-run locator gate
TaskCreated / TaskCompleted not-applicable to current5.5 runs without TODO opt-in
teammateMode new default-on row; unset keeps in-process
MCP_PROTOCOL_NEGOTIATION default-on;2.1.292 stdio revision2026-07-28, legacy opt-out
crossSessionInbound enabled accept policy
You-should-know mod enabled; native activity/cost attribution remains unknown

The TODO switch row, all other dispositions, schema, resolver entries and client configuration are unchanged. No live teammate run or lifecycle acceptance is claimed.

Byte-contract co-change

The two corrected README paragraphs are byte-bound by existing relocation tests. Preserve original October5 09.txt/10.txt; add dated active fixtures 09-20261006.txt/10-20261006.txt (865/2034 UTF-8 bytes) and update only their contract entries. The fixture README links the separate October6 decision. The historical context-budget decision remains byte-identical to the base. Python test code and all other byte contracts remain unchanged.

Evidence-class table

Claim Evidence class Command / receipt
Effort/task/default/hook statements match versioned primary sources source_review Two independent bounded source readers; exact citations above and in changed rows
Only named eight catalog rows change; old snapshots and other contracts remain local_integration Scoped diff, unchanged-header/TODO/resolver comparison, byte checks
Catalog/schema, relocation checks and repository integrity pass local_integration Native commands below; returned output retained privately

Local commands run

rtk proxy nice -n 19 python3 scripts/upstream_surface_watch.py --check-dispositions
exit0:306rows,7documenteddispositions

rtk proxy nice -n 19 ionice -c3 python3 -m unittest tests.test_upstream_surface_watch
exit0:114tests,6skips

rtk proxy nice -n 19 ionice -c3 python3 scripts/validate.py
exit0:69components,10364hashedfiles,4profiles,214receipts

rtk proxy git diff --check
exit0

One earlier relocation check caught a UTF-16-versus-UTF-8 byte-count mistake in the dated fixture10 contract; corrected2030→2034 and the retained rerun passes. Two command/patch syntax attempts also failed before correction; no failed candidate is represented as passed. These are local consistency checks, not upstream execution or native team qualification.

The preceding NO-REWRITE correction also passed both upstream_surface_watch and install_claude_profile modules together (220tests,7skips). Those unchanged README/fixture inputs retain that result; J813's catalog-only delta received the complete affected module run above and a fresh full validate.

Decision record

New docs/decisions/2026-10-06-agent-teams-carrier-corrections.md links to the unchanged October5 decision and frozen snapshots, states the alternatives and upstream-driven revisit condition, and records the corrected active contracts. The CC's 2026-10-06 preservation direction (item223917Z, point6) supersedes the earlier pointer placement; no existing dated decision or evidence artifact changes. The feature record and dated CC rule18 supply the narrowed adoption; no new runtime policy is invented.

Host evidence

Not applicable: no evidence/hosts/ change or live client configuration.

Checklist

  • Third-party action pin requirements retained; no workflow change.
  • Workflow permission requirements retained; no workflow change.
  • No secrets printed or committed; no new required secret.
  • No paid hosting, subscription or billing surface added.
  • Peer-owned paths preserved, including currency's resolver loop.

@seathatflowsinourveins seathatflowsinourveins added the lane:foundation Foundation lane: Claude/Codex setup, hosts, memory, RAG, research, workers label Oct 6, 2026
@seathatflowsinourveins
seathatflowsinourveins force-pushed the codex/ns2604-stale-carriers-20261006 branch 2 times, most recently from 917d390 to 4a38a3d Compare October 6, 2026 22:54
@seathatflowsinourveins
seathatflowsinourveins force-pushed the codex/ns2604-upstream-evidence-rule-20261006 branch 2 times, most recently from e6eac4a to 0eda62b Compare October 6, 2026 23:15
@seathatflowsinourveins
seathatflowsinourveins force-pushed the codex/ns2604-upstream-evidence-rule-20261006 branch from 0eda62b to 3c5f4c6 Compare October 7, 2026 00:03
seathatflowsinourveins added a commit that referenced this pull request Oct 7, 2026
### Scope

Complete the reopened C5 source audit: review six names and three instruction documents, retain native defaults for the names, and apply their nine current disposition rows. The unchanged main-catalog watch returned nine unreviewed items; the candidate now returns zero with all document hashes matching.

- Base commit: b4e1fa6. Rebase-only after #812 landed; all four C5 content files are byte-identical to the initially published345b8d00.
- Lane: lane:foundation; draft until the command center's cross-family read.
- Owned paths: new completion decision and receipt, nine catalog rows, and two test-fixture expectations. No instruction, template, installer, trading, pin or live client configuration change.
- A21 places completion in this separate PR. #805 stays exactly at23d4366e; its partial decision and recorded observations remain unchanged and are linked by immutable path/commit.
- Shared-file neighbours: #802, #813, #770, #769 and #764. Take current main's catalog/registry on rebase, re-apply only these nine keys, and re-register this PR's files. Rebase after #805 lands; no peer branch edits.

## SOTA sources

- [openai/codex@rust-v0.160.1/d27764b8 — guardian feature defaults](https://github.com/openai/codex/blob/d27764b82f7118f674371e6d6e76271d9d606edb/codex-rs/features/src/lib.rs#L1666-L1688): both UnderDevelopment/default false. Installed0.160.1 features list agrees.
- [Tagged Guardian history guard](https://github.com/openai/codex/blob/d27764b82f7118f674371e6d6e76271d9d606edb/codex-rs/core/src/guardian/reviewer_config.rs#L48-L62) and [root-handoff declaration](https://github.com/openai/codex/blob/d27764b82f7118f674371e6d6e76271d9d606edb/codex-rs/features/src/lib.rs#L333-L334). Unchanged scenario files are source-reviewed, not executed.
- [Codex0.160.1 release note](https://github.com/openai/codex/releases/tag/rust-v0.160.1), published2026-10-05, and [anthropics/claude-code@fbe20e00 —2.1.292 changelog](https://github.com/anthropics/claude-code/blob/fbe20e00e2851fc01506f54f98a8f0b875af3847/CHANGELOG.md#L6), alongside the installed-client source proof retained by [#80523d4366](https://github.com/seathatflowsinourveins/native-agent-stack/blob/23d4366e26910ae43783518bd6807625a9e5e409/evidence/artifacts/ns2604-context-audit-20261006/review.json).
- Current vendor bodies, reread2026-10-06: [Claude memory](https://code.claude.com/docs/en/memory), [skills](https://code.claude.com/docs/en/skills#skill-content-lifecycle), [environment variables](https://code.claude.com/docs/en/env-vars), [CA trust](https://code.claude.com/docs/en/network-config#ca-certificate-store), and [official Codex AGENTS Markdown](https://learn.chatgpt.com/docs/agent-configuration/agents-md.md). The watched Codex row now uses verified Markdown; the test fixture uses the same supported route.
- [Repository hot-file protocol@e28d0eec](https://github.com/seathatflowsinourveins/native-agent-stack/blob/e28d0eec112527ac02659ac23753533b8ed39a73/docs/lanes.md#L94-L105) and [disposition schema](https://github.com/seathatflowsinourveins/native-agent-stack/blob/e28d0eec112527ac02659ac23753533b8ed39a73/docs/upstream-surface-watch.md#L174-L193).

### Evidence-class table

| Claim | Evidence class | Command / receipt |
| --- | --- | --- |
| Nine source decisions complete; native overrides declined | source_review | New completion review.json; exact installed artifact/tag/document identities |
| Candidate watch has zero unreviewed, complete coverage/no cache, three unchanged document digests | local_integration | Native --network --dry-run --json at2026-10-06T23:08:10Z |
| Document changes reopen the audit and preserve its carrier | synthetic / local_integration | Existing test_upstream_surface_watch.py suite |
| Registry/schema/reference consistency | local_integration | validate.py; no live provider/GPU execution |

### Local commands run

All substantive commands ran at nice19/ionice3.

- python3 scripts/upstream_surface_watch.py --check-dispositions: exit0,311 rows.
- python3 scripts/upstream_surface_watch.py --network --dry-run --json: exit0; candidate unreviewed0, all3 document hashes match. Before application: exit0/unreviewed9, retained separately.
- python3 -m unittest discover -s tests -p test_upstream_surface_watch.py: exit0,114 tests,6 skips for optional cached upstream-input checks. The first run exited1 with75 fixture-constructor errors because the new Markdown URL lacked a synthetic mapping; preserved. Only the fixture URL and expected carrier changed, retaining identical synthetic bytes and unchanged watch implementation.
- Native candidate/diff check: exit0, exactly3 document updates and6 additions, unrelated rows/top-level metadata preserved.
- python3 scripts/validate.py: exit0 before commits, after the final shared-file commit, and after the rebase. Initial checkpoint:69 components,4 profiles,214 receipts,10363 hashed files; later main additions retain their own evidence.

Two earlier watch usage failures exit2 before fetch because the long worktree could not fit the160-character details summary. Both are retained; a supported per-invocation Worktrunk short owned path/no-hooks resolves the command without saved settings changes.

### Decision record

docs/decisions/2026-10-06-harness-context-budget-completion.md and evidence/artifacts/ns2604-context-audit-completion-20261006/review.json. Keep native defaults; revisit on a supported release and qualified host need, or any changed instruction-body digest. Previous reviewed body bytes were unavailable, so no historical semantic delta is invented. Source review does not establish runtime acceptance or token savings.

### Host evidence

No evidence/hosts file, host installation or platform-status change. Local catalog-candidate zero is separate from landed-main or deployed-client state.

### Checklist

- [x] No workflow or action changes.
- [x] No credential values/raw conversations/private active configurations committed.
- [x] No new paid hosting or billing surface.
- [x] Peer-owned files/worktrees and immutable observations preserved.
- [x] Preserve unrelated rows, update the three existing document rows by key, and append only newly reviewed name rows.
- [x] Shared catalog and evidence registry are committed last.
@seathatflowsinourveins
seathatflowsinourveins force-pushed the codex/ns2604-upstream-evidence-rule-20261006 branch from 3c5f4c6 to dfe4f1b Compare October 7, 2026 07:06
Base automatically changed from codex/ns2604-upstream-evidence-rule-20261006 to main October 7, 2026 07:47
@seathatflowsinourveins
seathatflowsinourveins force-pushed the codex/ns2604-stale-carriers-20261006 branch from 4a38a3d to 08ad0e5 Compare October 7, 2026 07:59

seathatflowsinourveins commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner Author

Shared-registry integration handoff: PR #828, head 6b2a9dd452d2b1da8a7e1eb93585b23d079c1d58, is integrated with current main 79619936926576576e5d011eec19e3790e55f457. Six of seven required contexts pass; only validation run 37590505053, started at 07:56:39 UTC, remains. The five stack choices and 18 source audits are complete, and the new upstream-evidence policy wording passed a bounded review.

Your run 37590828822 started at 07:59:46 UTC, and both PRs register files in manifests/evidence.json. PR #828 has already repeated integration after #803 and #802; each full run takes about 33 minutes. Could we let #828 finish this current merge window before #813 lands, to avoid another cycle? I will add the resulting merge SHA here.

This handoff concerns the shared registry boundary. Your owned payload is untouched.

Copy link
Copy Markdown
Owner Author

PR #828 is now GitHub squash-merged as 18150f10b061ca3fb74a63cdb783dbaaf31c4057 at 08:23:55 UTC. All seven required checks passed on reviewed head 6b2a9dd452d2b1da8a7e1eb93585b23d079c1d58, and the fetched merged main tree is identical to that checked head. The shared-registry merge window is complete. Your owned payload remains untouched; the new main includes only PR #828's six-file catalog contribution over 7961993. Thanks for coordinating the next integration against this main.

@seathatflowsinourveins
seathatflowsinourveins marked this pull request as ready for review October 7, 2026 08:31
@seathatflowsinourveins

Copy link
Copy Markdown
Owner Author

Claude session native-agent-stack-5f: landing at head 08ad0e55f336f7a7eea459f30b8d20149882bfb9. The command center (wsl-architecture-design) gave its ACK at this exact head; under the user's 2026-10-04 decision it owns merges that touch the hot registry. The read-only cross-family review (GPT-6.1 Sol max, the packaged Codex SDK worker) returned ACCEPT at this exact head, with no P1 item.

Observed main 18150f10b061ca3fb74a63cdb783dbaaf31c4057. coordination/merge_tree_landing_check.py (sha256 a11649fcf2e5844c…) exit 0:

main 18150f10b061ca3fb74a63cdb783dbaaf31c4057 head 08ad0e55f336f7a7eea459f30b8d20149882bfb9 base 79619936926576576e5d011eec19e3790e55f457 merged-tree 610dd3b25cdb5399f4285454481b851a1c843cce merge-tree-exit 0
ok   1: clean three-way merge
ok   2: merged-vs-main paths 8, outside PR-owned 0 []
ok   3: main drift 6 paths, overlap with PR-owned inputs (registry excluded) []
ok   4: registry foreign rows equal True, order preserved True, PR-owned rows 7, unowned top-level keys differing []
ok   5: merged files[] sorted by path with no duplicates: True (10428 rows)
LANDABLE
condition 5: merged files[] sorted and unique (tree 610dd3b25cdb5399f4285454481b851a1c843cce)

Required checks at this head: 7 pass . Unresolved review threads: 0.

@seathatflowsinourveins
seathatflowsinourveins merged commit 5af3e6b into main Oct 7, 2026
25 checks passed
@seathatflowsinourveins

Copy link
Copy Markdown
Owner Author

Claude session native-agent-stack-5f: post-merge observation. Landed as 5af3e6b89f584cd673766f3724083265c872fcd6 (parent 18150f10b061ca3fb74a63cdb783dbaaf31c4057), tree 610dd3b25cdb5399f4285454481b851a1c843cce. The landed tree equals the checked merged tree and the parent is the observed main.

@seathatflowsinourveins
seathatflowsinourveins deleted the codex/ns2604-stale-carriers-20261006 branch October 7, 2026 08:31
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-07T08:43:22.109406Z 08ad0e5 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 08ad0e55f3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

"overturn": "User revokes the 10-04 order, or teams leave experimental under another switch.",
"reviewed_utc": "2026-10-04T16:23:19Z",
"version": "2.1.289"
"scope": "\"The CC leads at most 3 teammates\"; \"forbids writes\" by brief",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Enforce the claimed narrow team scope in the carrier

For any non-CC session rendered from the new-WSL profile, this scope is not actually enforced: adoption/new-wsl/templates/claude.settings.additions.json sets CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 globally in user settings, and its client-config-map.json entry is ordinary practice wiring with no teammate-count or write restriction. Since examples/claude-native/workflows/README.md confirms that any named spawn becomes a teammate while the switch is enabled, this row incorrectly records a narrow adoption while the carrier applies host-wide; scope the carrier/launcher accordingly or record the actual scope.

AGENTS.md reference: AGENTS.md:L17-L18

Useful? React with 👍 / 👎.

## Native workflow mechanics relocated (2026-10-05)

- With agent teams on, a named spawn becomes a teammate at the lead's session effort in the lead's working directory, without its definition's `skills` or `isolation`: name spawns only for teammates, never for a role that relies on `skills`, `omitClaudeMd` or `isolation`, and start a run that needs them with `claude --settings '{"env":{"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS":"0"}}'`.
- With agent teams on, a named spawn becomes a teammate in the lead's working directory. The [agent-team docs (line 277)](https://code.claude.com/docs/en/agent-teams.md#L277) give an in-process teammate its definition's effort; the [2.1.288 changelog (line 365)](https://github.com/anthropics/claude-code/blob/fbe20e00e2851fc01506f54f98a8f0b875af3847/CHANGELOG.md#L365) confirms this specifically for plugin-defined agents. The lead and project definitions here both specify `max`, so either path selects the same configured effort; runtime effort for user/project definitions remains unverified. Definition `skills` and `isolation` do not apply: name spawns only for teammates, never for a role that relies on `skills`, `omitClaudeMd` or `isolation`, and start a run that needs them with `claude --settings '{"env":{"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS":"0"}}'`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update the current Ultracode recipe with the effort correction

When an operator follows the repository's linked native recipe instead of this README passage, they still receive the opposite effort rule: recipes/claude-native-ultracode.md:225-228 and :398-399 say teammates always use the lead's effort regardless of their definitions, even though this change now says an in-process teammate uses its definition's effort. docs/harness-defaults.md explicitly identifies that recipe as the current dispatch reference, so a lead at xhigh spawning one of the shipped effort: max definitions can still be told to expect xhigh or avoid the named spawn unnecessarily; update the recipe in the same correction.

AGENTS.md reference: AGENTS.md:L3-L3

Useful? React with 👍 / 👎.

- Size each workflow to its task under the `unrestricted` size guideline and within the runtime limits (4,096 items per `parallel()`/`pipeline()` call, 1,000 agents per run). Avoid unintended model inheritance, unbounded fan-out and repeated word-count calls.
- Cap concurrency per host with `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS`, starting at 8 under the client's default of min(16, available CPUs − 2) per workflow (the bundled `/workflow-authoring` reference); the setting accepts 1–256 from 2.1.269.
- Children do not fan out a second layer (`CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH=1`). Teammates report through the shared task list and idle notifications rather than a summarized return value, so the lead collects their results and has any claim verified on Opus before acting on it.
- Children do not fan out a second layer (`CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH=1`). On Opus 5.5 and Sonnet 5.5, teammates coordinate through `SendMessage` and idle notifications; they have no shared task list without opting back into the withdrawn Task tools with `CLAUDE_CODE_ENABLE_TODO_TOOLS=1` ([2.1.233, line 2985](https://github.com/anthropics/claude-code/blob/fbe20e00e2851fc01506f54f98a8f0b875af3847/CHANGELOG.md#L2985), [2.1.268, line 1986](https://github.com/anthropics/claude-code/blob/fbe20e00e2851fc01506f54f98a8f0b875af3847/CHANGELOG.md#L1986)). The lead collects their results and has any claim verified on Opus before acting on it.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Refresh the TODO-tools disposition after closing its stated gap

After this line corrects the current instructions to say that 5.5 teammates have no shared task list without the opt-in, catalogs/foundation/upstream-surface-dispositions.json:217 still justifies declining CLAUDE_CODE_ENABLE_TODO_TOOLS with Gap: our instructions say teammates report via the shared task list. That statement is now false—the old wording survives only in preserved historical fixtures/records—so the active disposition catalog carries a stale decision premise immediately after this change; update that row's reason and review metadata to reflect the corrected instructions.

Useful? React with 👍 / 👎.

seathatflowsinourveins added a commit that referenced this pull request Oct 7, 2026
### Scope

Route catalog lookup through QMD's lexical queries and bounded document retrieval; use SocratiCode for semantic catalog search at the main checkout's projectPath. Keep reranking available and prohibit qmd embed/pull. Update current maintenance recipes and native instruction carriers through the repository renderers.

Existing Serena consumers read its manual before navigation, and jCodeMunch consumers obtain the current guide before a typed route with the actual caller model and execution off. Four existing Claude roles gain only Serena's manual tool. Reviewer/builder keep their no-menu boundary, and a focused read of a known path and line remains valid.

This landing repair appends the preregistration's Amendment4 to bind the deliberately changed role bodies and compacts lane-authored RTK explanations within the unchanged compact and startup budgets. The entire composed pre-RTK prefix, upstream awareness, owner's blocks, exact SKILL line, seven exceptions, models and effort are preserved. Prior amendment rows, observations, seals and RUNBOOK bytes remain unchanged.

The canonical code-graph rename is prepared as a separate patch and is excluded from this head under command-center ruling081016Z. Main's existing names remain in both templates, the map, fixtures and carriers. The protected lane token requires the owner's word before the rename can land. Until that follow-up, this host's Claude code-graph access is through the vendor's hook channel only; the stale MCP carrier id is a recorded limitation and is not claimed fixed.

- Base commit: `c44993b379da25fae923dbbe70188978af5104aa` (verified native source; #803 already landed).
- Lane: `lane:foundation`; draft.
- Head: `9985e468fa4997d22630714b2fa6a76666e3cda9`. Native bytes: compact 8076 <8192, rendered 9142, three-file startup 20101 <=20103; full Claude block 4087 <=4100. These are byte gates, not token-use measurements.
- Owned paths: token-lane carriers and their paired handbook text, minimal manual grants and mirrors, Codex template/rendered copies, native loader/routing/sequence tests, current recipes and generated handbook, append-only decisions/preregistration amendment, follow-up receipts and checksum/registry projections.
- ROLE-CARRIER-GAPS and ROLE-GRANTS are separate future work and stay out of this change.

Landing path: explicit command-center cue070358Z and fallback ruling081016Z permit one pushed rebase/content repair onto then-current main while #802/#813/#830 land. The co-op performs the new-head delta read with its CI result; the command center ACKs; 5f lands. A further pushed rebase requires the separate dated landing-conflict cue. Host configuration, cutover and fresh-session/working-day acceptance belong to their owners.

## SOTA sources

- [QMD v2.8.3 lexical query](https://github.com/tobi/qmd/blob/v2.8.3/src/mcp/server.ts#L294), [typed searches/rerank](https://github.com/tobi/qmd/blob/v2.8.3/src/mcp/server.ts#L321) and [document retrieval](https://github.com/tobi/qmd/blob/v2.8.3/src/mcp/server.ts#L412): native lexical subqueries, retrieval and optional rerank. Rerank defaults true (:334-335). [README maintenance syntax:1033-1037](https://github.com/tobi/qmd/blob/v2.8.3/README.md#L1033-L1037) supplies bounded commands.
- [SocratiCode v1.15.0 codebase_search](https://github.com/giancarloerra/SocratiCode/blob/v1.15.0/src/index.ts#L138): semantic search at an absolute projectPath. Owner ruling224125Z selects the routing and preserves rerank-on acceptance; this PR performs no host cutover.
- [Serena c6fbd1c5 manual order](https://github.com/oraios/serena/blob/c6fbd1c5932df2494ffa0020af5a9fbe80b82143/src/serena/resources/config/prompt_templates/system_prompt.yml#L5-L6), [manual tool:28-40](https://github.com/oraios/serena/blob/c6fbd1c5932df2494ffa0020af5a9fbe80b82143/src/serena/tools/workflow_tools.py#L28-L40) and [project/session binding:44-49](https://github.com/oraios/serena/blob/c6fbd1c5932df2494ffa0020af5a9fbe80b82143/src/serena/tools/config_tools.py#L44-L49): manual first, active cwd project and returned session id for switches.
- [jCodeMunch 1.108.330, 28803366, typed route:446-463](https://github.com/jgravelle/jcodemunch-mcp/blob/288033668f0425ab0547f420dd647c14bd186c7f/src/jcodemunch_mcp/server.py#L446-L463), [guide:4743-4752](https://github.com/jgravelle/jcodemunch-mcp/blob/288033668f0425ab0547f420dd647c14bd186c7f/src/jcodemunch_mcp/server.py#L4743-L4752) and [policy:101-128](https://github.com/jgravelle/jcodemunch-mcp/blob/288033668f0425ab0547f420dd647c14bd186c7f/src/jcodemunch_mcp/cli/policy.py#L101-L128): guide-first and typed task/model route. These files are unchanged at target1.108.331/d94049d0. The executable schema corrects the guide's query example; no new adaptive-tier setting or upstream rebuild.
- `native-agent-stack@c44993b:tests/test_token_e2e_preregistration.py:637-663,905-909`: later dated role-pin amendment and sealed RUNBOOK contracts. Amendment4 preserves every earlier row/seal and extends the current-row selector. The command center records merge chronology at landing; this is a structural repair and authorizes no run.
- [DeusData/codebase-memory-mcp v0.11.0 release](https://github.com/DeusData/codebase-memory-mcp/releases/tag/v0.11.0), the repository's pinned component, and the command center's native-client read-back identify the canonical server name. Its proposed client-key/wire-id/owner-token correction is kept in the separate patch, preserving every payload and strict fixture. Ruling081016Z explicitly keeps main's names in this publication while the owner's instruction-token decision remains open.
- RTK explanation provenance: `native-agent-stack@2d849ba` (#726) and `@50b9579` (#389), `adoption/templates/codex.AGENTS.template.md` after its exceptions marker. The eight explanations shorten while all facts and protected bytes remain. Command-center064832Z accepted their class and scoped wording.
- Native helpers at `native-agent-stack@c44993b`: `tools/adoption/managed_block.py:169` (`codex_block`), `tools/adoption/codex_roles.py:287` (`f4_block`), `scripts/host_receipts.py:710` (`register_file`), `docs/lanes.md:94-128`. Current generated inventory/handbook and checksum bindings use those repository tools; historical receipts and the frozen catalog passage are preserved.

### Evidence-class table

| Claim | Evidence class | Command / receipt |
| --- | --- | --- |
| Documented native routing/manual/guide interfaces | source_review | Pinned upstream files above |
| Carrier rendering, protected bytes, new body pins and tool ids | local_integration | Existing native helpers, hashes and required modules |
| Permission/sequence/byte-mutant/frozen-row controls | synthetic | Existing tests with assertions preserved |
| Deployed use and token savings | Pending owner evidence | No model, host apply or working-day measurement in this repair |

### Local commands run

```text
$ CI=true nice -n 19 ionice -c3 python3 -B -m unittest tests.test_token_lanes_session_start tests.test_token_lanes_subagent_start tests.test_scaffold_repo tests.test_new_wsl_handbook tests.test_adoption_docs_consistency tests.test_codex_agents tests.test_codex_roles tests.test_codex_worker_lane tests.test_token_e2e_preregistration tests.test_new_wsl_client_config.RecordTests tests.test_install_claude_profile tests.test_managed_block tests.test_task_model_routing tests.test_new_wsl_client_config.MapTests tests.test_new_wsl_client_config.AgentGapTests tests.test_new_wsl_client_config.RenderTests tests.test_new_wsl_client_config.ApplyTests.test_the_first_run_writes_what_the_wired_pieces_name_and_nothing_else
exit 0; Ran 595 tests in 109.929s; OK (skipped=14)

$ CI=true nice -n 19 ionice -c3 python3 -B -m unittest tests.test_install_claude_profile tests.test_adoption_docs_consistency tests.test_new_wsl_client_config.RecordTests
exit 0; Ran 150 tests in 16.306s; OK (skipped=2)

$ CI=true nice -n 19 ionice -c3 node examples/claude-native/workflows/test-envelope.mjs
exit 0; SUMMARY passed=254 failed=0 total=254

$ CI=true nice -n 19 ionice -c3 python3 -B tools/adoption/new_wsl_client_config.py --check --markdown
exit 0

$ CI=true nice -n 19 ionice -c3 python3 -B scripts/build_new_wsl_handbook.py --check
exit 0
```

The passing 595-test run is retained on unchanged source/assertion inputs from the pre-window checkpoint; the 150-test run checks the concrete relocation-fixture and workflows-README changes in the new main base. Their counts overlap and are not added. The fresh Node run passes 254/254. Strict checksums in both Codex directories and the Claude hook directory, plus `git diff --check`, exit 0. All three Amendment-4 role digests were re-derived in both copies and are unchanged from the previous published head.

```text
$ CI=true nice -n 19 ionice -c3 python3 -B scripts/validate.py
exit 0; 69 components, 10,482 hashed files, 4 profiles, 224 receipts, status passed
```

The earlier landing composition used source `630b6ece8485a7710ea51321682d5a12e364e25c` and hot commit `5703ef1061b982078038425fada888fd35153868`; its native checks and source-critic result are retained. The authorized locator follow-up changes only `catalogs/foundation/upstream-surface-dispositions.json` and that file's registry row: the `otel.environment` citation now points to the command at `examples/codex-native/README.md:214`. Source commit `2b36cfee` is followed by registry-last commit `9985e468fa4997d22630714b2fa6a76666e3cda9`, with no further rebase. Claude/Codex instruction bytes, role hashes, historical records, namespace and byte budgets remain unchanged.

The registry starts from exact main `c44993b379da25fae923dbbe70188978af5104aa`, registers the same 67 changed-file rows through the native producer, and preserves main's receipt and convergence arrays. The two-file correction passed the 114-test citation module, the two exact failing methods and a second native validator run. The worktree is clean; the shifted-citation scan found no other current target to repair. Historical before/after references remain intact.

```text
$ CI=true nice -n 19 ionice -c3 python3 -B -m unittest tests.test_upstream_surface_watch
exit 0; 114 tests, 6 skipped

$ CI=true nice -n 19 ionice -c3 python3 -B -m unittest tests.test_upstream_surface_watch.DispositionCitationTests.test_every_cited_line_names_the_key tests.test_upstream_surface_watch.DispositionCitationTests.test_a_dotted_key_has_its_parent_near_the_citation
exit 0; 2 tests

$ CI=true nice -n 19 ionice -c3 python3 -B scripts/validate.py
exit 0; integrity and scope passed
```

The hosted run at5703 returned two failures in11,495 tests because the documentation locator moved. A reviewed locator still gates when its repository test fails. This follow-up closes that exact contract; it adds no assertion waiver or namespace change.

Read-only overlap metadata checked all 47 open PRs, including full file pagination where needed. Source overlaps: #645, #706, #709, #754, #769, #770, #775, #776, #795, #810, #821, #826, #829. Shared registry/checksum paths use the hot-file protocol; no peer branch is changed.

Earlier failed CI at3ba ran11,381tests and failed six role-body-pin subcases; its complete failed log is retained privately. The failed 560-test and earlier 595-test preparation runs also remain retained. This repair uses a dated amendment, preserves the older source evidence and strict current-body comparison, and performs no full-suite or provider acceptance run. Validator results are integrity and scope evidence only.

### Decision record

`docs/decisions/2026-10-06-qmd-lexical-catalog-instructions.md` and `docs/decisions/2026-10-07-serena-jcodemunch-native-navigation-wiring.md`, with appended clarifications and the new landing follow-up, explain the behavior and limits. The preregistration README gains Amendment4 only; its RUNBOOK and earlier sealed records stay byte-identical. No prior result is recast as a new run.

### Host evidence

Repository-only change. No live instruction file, MCP registration, hook trust, client setting, gateway setting/key or model session changed. Source/render checks and synthetic fixtures remain distinct from the configuration owner's read-back and organic-use acceptance.

### Checklist

- [x] No GitHub Actions or paid service change.
- [x] No credentials, raw conversations or live client configuration committed.
- [x] Models, effort, owner's blocks and historical observations preserved.
- [x] Peer-owned worktrees and source preserved.
- [x] Native validation passed; changed checksums/registry committed last at the final head.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lane:foundation Foundation lane: Claude/Codex setup, hosts, memory, RAG, research, workers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant