Skip to content

[agent-experience] Remove redundancy and fold back eval iteration 7 - #16

Open
spoenemann wants to merge 3 commits into
mainfrom
agent-experience-dedupe
Open

spoenemann wants to merge 3 commits into
mainfrom
agent-experience-dedupe

Conversation

@spoenemann

Copy link
Copy Markdown
Member

Removes redundancy from the agent-experience skill so every rule has one owner file, then folds back the findings of eval iteration 7 (dedupe branch vs. main on Sonnet: 44/51 vs. 45/51, within the noise band).

Changes to the skill

  • SKILL.md phases reduced to goal, load pointer, done-when. Procedure detail lives in audit-playbook.md only. The always-loaded file shrinks from 27.7 KB to 24.8 KB.
  • Phase 6 proof protocol and claim check moved to the playbook. One place to maintain the deliberate-failure proof, revert rule, litter sweep, and claim families.
  • Affordances and variety reduction defined once, in SKILL.md's control-system section. Four other files now reference the definition instead of restating it.
  • Templates own shape; docs-structure.md owns triggers and lifecycle. Template headers are short pointers, not copies of the rubric.
  • Drifted copies fixed. 100- vs. 150-line map, four- vs. five-part self-correction messages, inventory list missing the docs site, design-docs table row missing two triggers, AGENTS.md template missing the design-docs pointer.
  • Evidence numbers only in agents-md.md; the check list only in check_docs.py's docstring. No more diverging enumerations.
  • Repeated reinforcement trimmed (convention over configuration, write-as-you-go, codebase-first, the copy ban) to one rule per decision point plus one rationale. Less instruction cost, same behavior.
  • Greenfield day-one build order restored to its explicit list. The pointer to the remediation ordering had widened day-one scope to CI in the eval run.
  • Routing symptom words restored (bug-vs-intended, a promise that keeps being broken) in the consult bullet and the ADR template header. Consult runs recognize spec-vs-ADR cases again.
  • Litter check made mechanical. Phase 6's done-when requires a tree-wide search for caches to come back empty; the playbook's fixture-flavored example list is generalized.
  • Agent tools in play named at Phase 0, and Phase 5 projects to that list. Fixes a tool named only in the opening request being lost by Phase 5.

Eval spec

evals.json: README-overlap budgets count sentences instead of wrapped lines, parameterised commands count as executed once one instantiation ran, consistency assertions name config files and code comments as in scope, and the bundled promise assertion is enumerated into clauses. Tags and the assertion count (51) are unchanged.

Verification

Sentence-level diff of the originals (every removed unit traces to a surviving owner), check_docs.py repo-wide run passes, pointer resolution checked, eval iteration 7 report in skills/agent-experience-workspace/iteration-7/.

🤖 Generated with Claude Code

spoenemann and others added 3 commits September 11, 2026 22:05
… templates

Give every rule one owner file: SKILL.md stays the spine (goal, load
pointer, done-when per phase) and now defines affordances and variety
reduction once; audit-playbook.md owns the Phase 6 proof protocol and
claim check; docs-structure.md owns routing, triggers, and lifecycle;
the asset templates own artifact shape; agents-md.md owns the evidence
numbers; the check_docs.py docstring owns the list of checks.

Fixes copies that had already drifted (100- vs 150-line map, four- vs
five-part self-correction messages, an inventory list missing the docs
site, a design-docs row missing two triggers, a missing design-docs
pointer in the AGENTS.md template) and trims repeated reinforcement to
a rule at each decision point plus one rationale.

Verified by a sentence-level diff (every removed unit traces to a
surviving owner), check_docs.py runs, and a pointer-resolution check;
evals.json reviewed, no assertion depends on the changed wording.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Skill: revert the greenfield day-one build order to its explicit list
(the pointer to the remediation ordering had widened day-one scope to
CI); restore the routing symptom words (bug-vs-intended, a promise that
keeps being broken) in the consult bullet and the ADR template header;
make the Phase 6 litter check mechanical (a tree-wide search for caches
comes back empty) and generalize the playbook's cache example; name the
agent tools in play at Phase 0 so Phase 5 projects to that list.

Evals: README-overlap budgets count sentences, not wrapped lines;
parameterised commands count as executed once one instantiation ran;
consistency assertions name config files and code comments as in
scope; the bundled promise assertion is enumerated into clauses a-c.
Tags and the assertion count (51) are unchanged. Items 2, 5 and 6 of
the report are held as post-hoc fits to single runs; 3 kept as is;
4, 10 and the proposed additions batched for the next suite revision.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Fold-backs from eval reports, field runs, and PR reviews have produced
the same three faults repeatedly: a rule restated in several skill files
until the copies drift, new content that contradicts the skill's existing
structure or vocabulary, and one project's specifics encoded as if they
were the general rule.

AGENTS.md now fences each with one incident-cited convention: one owner
per rule, term, and number (widening the former jargon-once line); new
content fits the skill it lands in; a finding enters as the general rule
it instances, with ungeneralizable findings held and listed as held in
the commit message. The definition of done gains a grep-and-re-read
check for redundancy and consistency, and the layout line states that
SKILL.md carries the procedure and points to the reference owning each
detail.

Verified: check_docs passes on the final state; every SKILL.md names
every reference it ships; a duplicate-sentence scan across the seven
skills finds one two-owner case (idiomatic-go's goroutine exit rule),
left for a separate change.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant