Repository navigation
Resolve the upstream-surface backlog to Claude Code 2.1.296 and Codex rust-v0.162.1 - #950
Merged
Merged
Conversation
seathatflowsinourveins
force-pushed
the
claude/gap-resolution-20261009
branch
from
October 11, 2026 20:39
fff5e13 to
37b9008
Compare
seathatflowsinourveins
marked this pull request as ready for review
October 11, 2026 20:43
seathatflowsinourveins
force-pushed
the
claude/gap-resolution-20261009
branch
from
October 12, 2026 00:50
37b9008 to
8e90041
Compare
… rust-v0.162.1 Disposition the 49 open names plus two the docs do not list yet, re-review the Claude memory and skills document rows, advance the baseline from 2.1.289 and rust-v0.160.0, and record the gaps, the page-digest rows not added and the hand-offs in one decision record. Data only: no code, instruction text, setting, hook or unit changes. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
… rows Leave CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL unset (declined); decline ultrafast_mode (plan-gated, dropped client-side by the OmniRoute profile); keep the Codex cyber access programs as owner information only; decline the model_providers capabilities rows until the currency lane's trial after #943. Rows, decision record and the re-registered catalog hash change together. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
…ecord The page-URL diffs go to the command center (through the daily watch service it installs after #943), the changelog-name report to the currency lane, and the settings-drift inventory to cc-native-practice. The weekly practice pass, the TeammateIdle gate, the cost-data check and the WebSearch interaction now say who acts or that nothing is scheduled. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
…ith tests Unset workflow agents do not inherit the session model. The workflows page (Cost section) and the sub-agents page (Choose a model), read 2026-10-11 against Claude Code 2.1.296, resolve a workflow agent's model as a model the script names, then the definition, then CLAUDE_CODE_SUBAGENT_MODEL, then the session model, and adoption/templates/claude.settings.template.json:27 sets CLAUDE_CODE_SUBAGENT_MODEL to opus. The reason of the CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL row and the record's workflow-agent bullet now say so, and the dispositions catalog is re-registered in manifests/evidence.json. Only that row's reason text changed in the catalog; keys, dispositions, sources and versions are identical, and the watch's counts do not read the reason. The record said this repository's CLAUDE.md (8 lines) imports AGENTS.md (14 lines). AGENTS.md has 25 lines at 8c95a50 (#944 grew it before the rebase), and a count of a file other PRs edit goes stale in a record that is kept, so the record now states only the import. It also dated the first watch run "at the PR base", which every rebase moves; the row now names the original base, a7bb4a5 (main after #941, committed 53 s before the run), as the PR's body recorded it. Two tests in DispositionCitationTests guard these claims: - test_unset_workflow_agents_are_not_said_to_inherit_the_session_model - test_the_record_pins_no_instruction_file_line_count_and_no_relative_base (no line count after CLAUDE.md or AGENTS.md, no "the PR base", the run row names a commit, and CLAUDE.md still imports AGENTS.md through its @AGENTS.md line, which keeps the one relationship the record states true). On the tree of 37b9008 plus the test file, the two fail five sub-assertions (the row and the record say the agents inherit the session model, the row does not name CLAUDE_CODE_SUBAGENT_MODEL, the record pins "(8 lines)", and the record says "the PR base"); on this commit they pass. tests/test_upstream_surface_watch.py is re-registered in manifests/evidence.json. The record called #923 a draft; #923 landed in a30c218, its skill pins client_version 2.1.295 (reference/slots.json:3), and "Cloud routines" is a ranked alternative of the scheduled-tasks slot (reference/slots.json:1625). The record now says so, re-dates its exact-case search of the skill's pages, and adds the sub-agents and workflows pages read on 2026-10-11, with their body digests, to its SOTA sources. Its scope sentences and its evidence counts (233 tests with the two new ones) now name the regression tests. Not run: a probe of workflow-agent model precedence; the corrected sentences rest on the documentation, and the tests guard the committed text, not the client. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
seathatflowsinourveins
force-pushed
the
claude/gap-resolution-20261009
branch
from
October 12, 2026 03:23
8e90041 to
7381e59
Compare
This was referenced Oct 12, 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.
Scope
AGENTS.mdline count and the base that the first dated watch run is attributed to (the record and a second regression test), and the status of Claude Code native practice, 2026-10: one evidenced default per role slot #923 (the record only), with the registry entries of the catalog and of the test module.900835c60ce9890cd704df4e98ded0b8aa91977d(the merge base of this head)a7bb4a51eea9cc321dd06dd6243a5b2654a5f805(main after feat(local-pages): show native lanes, rates and model services #941, committed 2026-10-10T00:03:13Z). The branch was cut here and has been rebased since. The watch runs dated 2026-10-10 below were made at this base, and on this branch before the rebase; their output is host-local and not attached here (F12). They are dated observations at the original base, not measurements at the current one.lane:foundationcatalogs/foundation/upstream-surface-baseline.json,catalogs/foundation/upstream-surface-dispositions.json,docs/decisions/2026-10-09-claude-code-gap-resolution.md,tests/test_upstream_surface_watch.py(two regression tests),manifests/evidence.json(the entries of the two catalogs and of the test module only).SOTA sources
CHANGELOG.mdat2301018b1f61: the 2.1.296 section (lines 3 to 84), with the entries at lines 7 and 8 that two rows cite as their source (CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL,CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS), and the entries at lines 100 (2.1.295), 299 (2.1.292) and 554 (2.1.290), whose versions the reasons of three more rows name; those three rows cite the environment-variable page.994709b9(Cost section) and sub-agentsdd3f22aa(the model order), withadoption/templates/claude.settings.template.json:27(CLAUDE_CODE_SUBAGENT_MODELisopus).092d3acd6bec:codex-rs/features/src/lib.rs(feature table lines and doc comments) and theconfig-schema.jsonrelease asset (sha2567933a70506e7…); release notes rust-v0.161.0 and rust-v0.162.0.@anthropic-ai/claude-agent-sdk0.3.296sdk.d.tsand the installed Claude Code 2.1.296 binary foridleCompaction(existing row, unchanged).scripts/upstream_surface_watch.pyand its guide, reused unchanged; nothing is rebuilt.Evidence-class table
a7bb4a51) the watch reported 55 new names, 6 removed, 2 stage changes and 51 unreviewed (49 names plus the memory and skills digests)local_integrationupstream_surface_watch.py --network --dry-run --json, 2026-10-10 00:04:06Z (host-local, output not attached: F12)local_integrationreasontext of one dispositions row corrected in 7381e59, which the watch's counts do not read; 343c34c edits the decision record only)source_reviewlib.rslines andconfig-schema.jsonnamed in the decision recordCLAUDE_CODE_WORKFLOW_SUBAGENT_MODELrow and the record (7381e59)source_reviewlocal_integrationunittest tests.test_upstream_surface_watch.DispositionCitationTests.test_unset_workflow_agents_are_not_said_to_inherit_the_session_model: FAILED (3 sub-assertions) on 37b9008 plus the test file (the row and the record say the agents inherit the session model; the row does not nameCLAUDE_CODE_SUBAGENT_MODEL), OK on 7381e59CLAUDE.mdorAGENTS.mdline count and dates no run at "the PR base" (7381e59); the import it keeps holdslocal_integrationunittest tests.test_upstream_surface_watch.DispositionCitationTests.test_the_record_pins_no_instruction_file_line_count_and_no_relative_base: FAILED (2 sub-assertions: "(8 lines)" and "the PR base") on 37b9008 plus the test file, where the record saidAGENTS.mdhad 14 lines and it had 25; OK on 7381e59; the import is checked against the@AGENTS.mdline ofCLAUDE.mdlocal_integration--check-dispositions;unittest tests.test_upstream_surface_watch tests.test_currency_due tests.test_currency_due_notice(233 tests, 6 skipped; 231 before the two added regression tests, and the same 6 skips)local_integrationpython3 scripts/validate.pyCLAUDE_CODE_WORKFLOW_SUBAGENT_MODELprecedenceLocal commands run
Follow-ups
Found by the first Claude read (F1 to F10) and the first GPT read (F11 to F14), both at 37b9008; none blocks this PR.
tests/test_upstream_surface_watch.py:879(33, 173),:892173and:9391034(docstring:937, "real rust-v0.160.0 schema") pin the old artifacts' counts. They skip in CI and in the runs this PR lists (the 6 skips are this PR's untested boundary). With the real 0.3.296sdk.d.tsand the rust-v0.162.1config-schema.jsoninUPSTREAM_SURFACE_TEST_CACHE,CachedArtifactTestsran 6 and failed 3 ((33, 174)against(33, 173),174against173,1057against1034). The PR neither causes nor worsens this; it surfaces once the daily units fill the default cache. Read the expected counts from the committed baseline'ssource_countsandcounts.35fd2c11, row and baseline3a4428d1). A live dry-run at the head reportsunreviewed: ['claude:doc:skills']and nothing else (new 0, removed 0, stage_changed 0); it needs a digest re-review through the carrier audit after landing. The memory page still hashes to its row. The body's "0 unreviewed" is the 2026-10-10 00:25:49Z measurement and stands as dated.stack-currency.timerandupstream-surface-watch.service, or the first daily run re-reports the 55 names and 2 documents. The live checkout now exists and Check active model selectors against a versioned native catalog #943 is on main, so the record's "after Check active model selectors against a versioned native catalog #943 lands" and "the command center creates that checkout" are past; they are not false at this PR's tree, which has no Check active model selectors against a versioned native catalog #943.features.guardianv2.*rows say "Guardian features are native-off here".guardian_approvalis Stable and on at the pin (codex-rs/features/src/lib.rs:1764-1766at092d3acd);guardianv2is UnderDevelopment and off (:1806-1808). Scope the sentence to Guardian V2.codex:feature:code_mode_tool_searchcites "#51126, #51209"; only #51209 is the ranked tool discovery, and #51126 is the promise-settlement helpers (rust-v0.162.0 notes, same highlight line).sourceskeeps two entries from the in-memory trial of the page-digest rows that were not added (claude-doc-docs-index5bbcf52c,claude-doc-platform-release-notese3071b25). No committed enabled document row observes them; they are harmless and the next--write-baselinedrops them. The record does not mention it.manifests/evidence.json; this PR registers the two catalogs and the test module and does not add the record's entry.evidence_manifest.py --checkandvalidate.pypass without it (185 of the 247docs/decisionsMarkdown files are registered, this record not among them).WORKFLOW_SUBAGENT_MODEL,daybreak,api_key_cyber_access_programsx2,cli_daybreakx2,ultrafast_modex2,model_providers.*.capabilities*x3).2301018b) that are not names and have no disposition: the gatewaymanaged.policies[].codekey (CHANGELOG.md:5), the Read tool'sallow_large(:10), hookonFailure: "block"(:87, 2.1.295) and the Agent tool'seffortparameter (:298, 2.1.292).autoCompactWindowin subagent frontmatter (:6) is not decided by the 2.1.289claude:setting:autoCompactWindowrow, which covers the setting, and the two Codex stage changes have no rows (the record says so). The record hands such changes to the weekly practice pass, butclaude_changelog_delta()(scripts/upstream_surface_watch.py:1043) keeps only versions newer than the baseline, so the 2.1.290 to 2.1.296 window drops out of the watch's report once this baseline lands. Keep a dated disposition or a linked hand-off for each before that context is lost.sourcesdigests has its original capture attached to this PR. The GPT read reproduced three (the changelog blob from the mirror at2301018b, the rust-v0.162.1 schema from the092d3acdmirror, andcodex features list: 167 names, the same digest and size) and could not reproduce the other 13 (dated page, registry and API bodies, andsdk.d.ts0.3.296, which no supplied mirror carries). The first Claude read re-fetchedsdk.d.ts, the schema asset, the changelog and the memory page and found the baseline's digests; the skills page has since moved (F2). The record's host-local observations (the watch runs, the settings-drift and host-configuration inventory, the OmniRoute measurement, page churn, credits and pricing) have no attached receipts either. Attach the dated bytes and receipts with matching hashes. A missing capture does not show that a claim is false, and a current page does not show what it said on 2026-10-09.catalogs/foundation/upstream-surface-dispositions.jsonand 18 lines ofmanifests/evidence.json(20 occurrences), all in text this PR does not change; the PR's diff, the baseline and the new record hold none. It is hygiene, not a blocker. Normalize the historical labels only through each record owner's evidence-preserving process, not as a condition of this PR.tests/test_secret_path_guard.py::SecretPathGuardTests::test_host_profile_copy_is_verbatim(the assertion is at:3147here and was at:3124at 37b9008) failed on the review host because the installed user-scope guard differs byte for byte fromscripts/hooks/secret_path_guard.py; the module otherwise ran 90 tests with 1 failure and 2 skips. This PR changes neither file, and no unsafe behavior was established. The repository already records this as a by-design difference until the profile installer's guard step runs (docs/decisions/2026-09-29-key-management.md;tools/adoption/install_claude_profile.py --only guard). Reconcile the installed copy to its intended pin; do not roll the host back to pass the test. Reported by the GPT read; not re-run here.Decision record
docs/decisions/2026-10-09-claude-code-gap-resolution.md: the measured backlog, the dispositions and why, the three page-digest rows tried and not added (change rate), what the watch cannot see, the hand-offs (command-center tools window, settings drift, living-page deltas, grand-catalog candidates, owner items), the inverse and the overturn conditions.Host evidence
Not applicable: no file under
evidence/hosts/changes.Checklist
Merge notes:
manifests/evidence.jsonis a hot file, so the entries of the two catalogs and of the test module may need the one landing-turn rebase (take main's copy and re-registerupstream-surface-baseline.json,upstream-surface-dispositions.jsonandtests/test_upstream_surface_watch.py). The daily units that will read these catalogs are not installed yet; this change should land before their first run.🤖 Generated with Claude Code