docs(retro): move the #437 learnings from private memory into repo records - #438
Merged
Merged
Conversation
…cords The skill-description unit's durable learnings had been stored in Claude-private memory, which Codex and Gemini sessions cannot read. They now live where every host looks. - Global Lesson [skill-description-cost][HIGH][editing-skill-md]: each SKILL.md character costs ~2.33 tokens against an aggregate ceiling with 113 headroom, targeted checks stay green on a breaching tree, and backlog #199 is the open decision. As a HIGH lesson it surfaces in the /implement pre-execution review on every host. - repo-gotchas section 16: the SKILL.md frontmatter description is consumed host-side. Codex selects on it; openai.yaml is UI metadata; Claude Code does not read .agents/skills in this layout. Phrased as knowledge - the file's own test forbids directive keywords. The registry was at cap 20 with no LOW entries, so /retro's LOW-only archival could not free a slot. On the user's choice, [classification-flow] (MEDIUM, the GENESIS entry) was archived through append_lesson.py --archive: chain re-anchored, bridge record in INDEX.jsonl. bootstrap.md:25 already encodes it as a rule. One lesson added, not four: two of #437's record errors violated lessons already present, and near-duplicates add length, not obedience. Also rotates the two oldest Ship History entries into the 2026 archive, verbatim. The #437 ship took the section to 11 without rotating; that was owed by the previous unit and is recorded as such. Token aggregate unchanged: 354887 before and after, measured. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Terminal evidence write only: the validator, lesson-chain and audit-chain results taken after every other write in this unit. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…ion 16 repo-gotchas.md ships to adopters as force-update core tier, and check_skill_provenance.py is not in the deploy set, so the new paragraph sent every adopter to a file they do not have - another instance of backlog #192. The guarding test did not catch it because it matches only full .agentcortex/tools/<name>.py paths and the citation was a bare basename, a gap #192 already records. Restated without the file reference. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Terminal evidence write only. Supersedes the record taken at 69278b6, which predated the section-16 fix. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
lawandtaxcarebd-byte
pushed a commit
to lawandtaxcarebd-byte/agentic-os
that referenced
this pull request
Sep 15, 2026
Seven version surfaces + CITATION date-released, CHANGELOG entry for the units merged since v1.8.26 (KbWen#425, KbWen#436, KbWen#437, KbWen#438, KbWen#435), Ship History entry with cap-10 rotation, heartbeat 172, Work Log archived and chained. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.
Summary
/retrofor #437. That unit's durable learnings had been written into Claude-private memory, which Codex and Gemini sessions cannot read. This moves them into the repo's own record surfaces, where every host looks.Records only. No skill wording, workflow, rule, metadata or token-ceiling change.
current_state.mdGlobal Lessons[skill-description-cost][HIGH][editing-skill-md]/implementpre-execution review on every host - exactly when someone is about to edit a SKILL.mdcurrent_state.mdGlobal Lessons[classification-flow](MEDIUM, the GENESIS entry), archived/retro's LOW-only path could not free a slot. Chosen by the repo owner;bootstrap.md:25already encodes it as a rule.agent/rules/repo-gotchas.md§16descriptionis consumed host-side. Codex selects on it;openai.yamlis UI metadata; Claude Code does not read.agents/skillsin this layoutarchive/ship-history-2026.mdThe new lesson
Each character added to a
.agents/skills/*/SKILL.mdcosts ~2.33 tokens against the aggregate lifecycle ceiling (~8.9x its own size), with 113 tokens of headroom. On #437 the targeted tests, both validators and two review rounds stayed green on a tree that breached it; only the full suite caught it. Backlog #199 is the open decision.Why one lesson rather than four
Two of #437's record errors violated lessons already in the registry (
[signal-preservation]for a swallowed exit code,[audit-verification]for trusting a reviewer's claim). Adding near-duplicates to a full registry adds length, not obedience. The other two are recorded in the committed review documents and archived Work Logs.A defect I introduced and fixed before opening this
The first version of the §16 paragraph cited
check_skill_provenance.pyby bare filename.repo-gotchas.mdships force-update core tier and that tool is not in the deploy set, so every adopter would have been pointed at a file they do not have - another instance of #192.test_deployed_governance_referenced_tools_are_deployedstayed green because it matches only full.agentcortex/tools/<name>.pypaths; #192 already records that bare basenames evade it. Fixed in80401a7by stating the fact without the citation.Verification
All run after the last write, against the branch tip:
validate.sh/validate.ps1pass=99 warn=4 fail=0 skip=3, WARN sets identicalcheck_lesson_chain.pycheck_audit_chain.pytest_repo_gotchas_discoverability.py,test_deploy_tiering.py(whole file),test_lesson_chain_archival.pyanalyze_token_lifecycle.pyaggregaterepo-gotchas.mdThe 4 WARNs are pre-existing.
passreads 99 because no Work Log is active after archival. No subagent review was run; review is optional for quick-win and this is stated rather than implied.🤖 Generated with Claude Code