skills(ai): delete the planned-eval stub and drop its ceiling row (#14296 item 2) - #14652
Merged
Merged
Conversation
#14296 item 2 = A (comment 5507419465): the planned-eval stubs are deleted and their ceilings step down; real fixtures stay, and no new eval packages are created. This is round 2 of #14305 -- round 1 (PR #14463, merged) implemented every RESTRUCTURE finding in skills/objectstack-ai/SKILL.md and deferred AI-H-01 / AI-H-02, the evals/README.md planned-structure stub, to this ruling. Deletes skills/objectstack-ai/evals/README.md (315 tokens, 44 lines -- a placeholder whose "Structure" fence lists five eval files that do not exist anywhere in the repo) and drops its one ceiling row from scripts/check-skills-token-ratchet.mjs. That row was the only reference to the path in the tree, so nothing else reads the file. No other row changes, no ceiling raised. skills/objectstack-ai/evals/ held nothing but the stub, so the ruling's "real fixtures stay" clause has no subject here. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LraLgQVGq8egUwfYZpbYt1
…-eval-stub-removal
This was referenced Sep 2, 2026
This was referenced Sep 2, 2026
os-zhuang
approved these changes
Sep 2, 2026
os-zhuang
marked this pull request as ready for review
September 2, 2026 22:48
os-zhuang
enabled auto-merge
September 2, 2026 22:49
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.
Fixes #14305
Round 2 of this card. Round 1 (PR #14463, merged) landed every RESTRUCTURE finding in
skills/objectstack-ai/SKILL.mdand deferred one row — AI-H-01 (with AI-H-02, which lives in the same file) — to the batch-1 ruling. That is the only deferral the seat's ACCEPT names, so this PR closes the card.The ruling
#14296 item 2 = A, comment 5507419465 (09:27Z), quoted from the dispatch:
Same two-file shape as the merged precedents PR #14585 (query) and PR #14578 (automation).
Pre-deletion verification
The ruling protects real fixtures, so the directory was enumerated before anything was touched:
One file, and it is the planned-eval stub, not a fixture: 44 lines whose Status section reads
⚠️ **Not yet implemented** — This is a placeholder for future development.Its "Structure" fence lists five eval files. None of the five exists anywhere in the tree:Nothing reads the file. The whole tree holds exactly one reference to the path, and it is the ceiling row this PR drops:
No gate, no script under
scripts/orpackages/spec/scripts/, and no test readsevals/for this package.The diff — two files
skills/objectstack-ai/evals/README.mdscripts/check-skills-token-ratchet.mjsNo other row changed, no ceiling raised, no prose edited, no file added, no other package touched.
Governed-surface size readings (
skills/**)Token counts use the ratchet's own convention,
ceil(utf8 bytes / 4).skills/objectstack-ai/evals/README.mdskills/objectstack-ai/**The package total is
SKILL.md(417 lines / 5,476 tok) plus the generatedreferences/_index.md(45 lines / 819 tok), both byte-identical toorigin/main.Reverse verification — red, then green
Both readings are byte-exact from this branch; exit codes were captured before any pipe.
Leg 1 — file deleted, ceiling row still present. Expected direction: red, because the ratchet treats an unreadable input as a failure rather than a skip.
Leg 2 — ceiling row dropped. Green:
The script's own suite. The ratchet script is edited by this PR, so its self-test is owed on top of the derived families:
git grep -l check-skills-token-ratchetover test files returns nothing — the built-in--self-testis the whole of that script's suite.Scope note — one thing deliberately NOT edited
Dropping the row leaves its section header standing over an empty section:
The header used to carry two rows; the i18n flight removed the other one earlier today, and this PR removes the last. Deleting the header is a prose edit, which this flight's scope explicitly excludes, so it is left exactly as it stands and flagged here instead of being tidied silently. It is inert — the map is keyed by path, and a comment over zero rows changes no verdict. If the seat wants it gone, it is a one-line follow-up.
Gates
Derived after the edit — and again after the merge below, at the final head. Both derivations return the same 24 commands. The final one:
All 24 were run, plus
check:skill-docswhich the dispatch names explicitly — 25 commands, one acquisition of the shared verify lock (OS_VERIFY_LOCK_SLOT=issue-14305-r2). Every exit code was captured before any pipe.Union re-run at head
ffdbdcd7— the final commit on this branch:node scripts/check-ci-filter-parity.mjscoreorcrosspkg, everycrosspkgentry still covers one, and thetestjob'sif:still names both filters.node scripts/check-cross-package-test-inputs.mjsnode scripts/check-shard-attestation.mjsnode scripts/check-skills-token-ratchet.mjsnode scripts/check-test-completeness.mjsturbo run testlog, and no log was named.node scripts/pm/bare-root-worklist.mjs --self-testpnpm --filter @objectstack/lint run check:doc-formula-expressions@objectstack/formulais not builtpnpm check:agent-test-spelling--token(s) · 1380 launcher-rooted run(s) · 9 separator(s) JUDGED · 5 vitest-backed script name(s) derived from 81 ma…pnpm check:bash32-floorpnpm check:cli-command-idspnpm check:corpus-claim-driftpnpm check:cross-package-test-inputspnpm check:doc-authoringpnpm check:entry-guardpnpm check:parse-guardpnpm check:pm-dispatch-gatespnpm check:pm-governed-mergespnpm check:pnpm-filter-targets--filteroccurrence(s) across 32 file(s) resolve against 79 workspace package(s); 39 not judged (2 foreign, 17 interpolated, 20 path); 47 more in co…pnpm check:ratchet-remedy-authoritypnpm check:role-wordpnpm check:skill-compatibilitypnpm check:skill-frame-syncpnpm check:skill-identifier-livenesspnpm check:watch-hint-literalpnpm --filter @objectstack/spec check:skill-docsNOT MEASURED — 2 of 25
Both exit 3, both by design, and this flight touches neither subject. CI supplies both.
node scripts/check-test-completeness.mjsturbo run testlog, and no log was named.pnpm --filter @objectstack/lint run check:doc-formula-expressions@objectstack/formulais not builtAn exit 3 is recorded as NOT MEASURED, never as a pass and never as a flake.
The two the dispatch asked to see proved unaffected
And the generated catalog needs no regeneration — neither generated file lists
evals/for this package, so the deletion leaves them in sync:Base
Branch cut from
origin/mainatca48cf37.origin/mainthen moved to20b88391, which touches.claude/skills/pm-dispatch/SKILL.mdandscripts/pm/dispatch-gates.mjs— neither of this PR's two paths — so it was merged in rather than rebased, and the family was re-derived at the merge head and re-run whole. Againstorigin/mainthe branch is still exactly the two files:Governed surface (
skills/**), so this PR stays draft; review requests and the merge are not the dev's step.Generated by Claude Code