Adopt CC 2.1.169 — prompt extraction + extractor#5
Conversation
…internal comments 2.1.169 surfaced 8 prompts anonymously: 3 restructured below the fuzzy-match threshold (communicating-with-the-user, /schedule, design-sync package source adapter) + 3 net-new (code-review efficiency, operating-autonomously, EnterWorktree isolation directive). Add NEW_PROMPT_ASSIGNMENTS matchers for all six and re-pin the restructured ids so their lobotomized overrides keep binding. The /schedule prompt grew 15->34 interpolation sites but still dedupes to the same 15 underlying identifiers in the same first-appearance order, so its .168 identifierMap carries over verbatim (override ${VAR}s re-bind 1:1). Exclude the two new @internal JSDoc annotations (supportedDialogKinds gating, retracted-message uuid wiring) -- TS doc-comments, not model-facing prompts. Adds data/prompts/prompts-2.1.169.json (389 named, 0 anonymous). Strict version-bump report: 0 blocking issues, 0 removed ids. Refs dividedby/tweakcc-maint#58 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…park #26, file #62 (#63) The HITL 2.1.169 gate run shipped the patcher half of #58 (skrabe/tweakcc-fixed#5) and disproved the handoff's "no override work": the full-override gate boot-crashes on pre-existing #26 breakage. Reconcile the census: - #58 → Blocked on #26 (patcher half done+shipped; lobotomized half blocked) - #26 → un-parked into W1 as the live blocker; confirmed pre-existing & version-independent - #62 → new (orphan-validator SYNTHETIC_POSITIONAL false-clean), W2 needs-triage Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
… pipeline The committed prompts-2.1.169.json was extracted without TWEAKCC_UPSTREAM_JSON, so agent-prompt-worker-fork carried the 2.1.168 identifierMap and mis-bound two override placeholders: WORKER_DIRECTIVE (slot1 -> should be slot2) and ADDITIONAL_CONTEXT (slot2 -> should be slot3). 2.1.169 inserted AGENT_TOOL_NAME at slot1, shifting both down one. The opus-4-8 override binds by human-name, so it would silently resolve to a valid-but-wrong var (no crash; invisible to smoke + four-zeros; only the mis-bind audit catches it). Regenerated through the leaf's pipeline with the upstream identifierMap adopted for shared prompts (commit 38daf92), which restores the correct slot binding. promptExtractor.js (the 6 new/restructured names + 2 @internal exclusions) is unchanged - this only corrects the generated data artifact. Verified: tools/auditMisbinds.mjs -> 0 mis-binds; version-bump report 2.1.168 -> 2.1.169 -> 0 blocking / 0 anonymous / 0 UNKNOWN / fresh extraction matches committed; 389 named (prev 383, no regression). Co-authored-by: dividedby <64715420+dividedby@users.noreply.github.com>
|
Thanks for this @dividedby — the extractor work is spot-on. I verified it independently: our own extractor flags the exact same 6 gaps this PR fills (3 fuzzy-misses: schedule / communicating-with-user / the non-storybook One finding on the committed JSON, which I've fixed in a commit pushed on top ( Root cause is just that the JSON was generated without (Note: PR #4's skip-unresolved guard wouldn't have caught this one — it's wrong-but-valid, not an unresolved Verified after the fix: |
Extracts the 2.1.169 system prompts (
data/prompts/prompts-2.1.169.json) and teachestools/promptExtractor.jsto name the 6 new/restructured 2.1.169 prompts and exclude 2@internalcomment blobs. Seeded by fuzzy carry-over from the leaf's ownprompts-2.1.168.json(no external source).Verification
tools/versionBumpReport.js 2.1.168 2.1.169 --strict: 0 blocking · 0 removed ids · 0 anonymous (exit 0);pnpm test→ 323 pass / 5 skip.pass: true,bootVerifyPassed: true, emptyfailedPatches/missingSystemPrompts/orphanVariables, clean Restore drill. Record:{ "pass": true, "versions": [ { "ccVersion": "2.1.169", "fourZeros": { "pass": true, "failedPatches": [], "missingSystemPrompts": [], "orphanVariables": [], "orphanSource": "boot-verify-fallback", "advisoryOrphans": [ "IS_TRUTHY_FN", "PROCESS_OBJECT", "CRON_DURABLE_FLAG", "CONDITIONAL_WHAT_HAPPENS_NOTE" ], "bootVerifyPassed": true }, "restoreDrill": { "pass": true, "status": "pass", "backupExists": true, "restored": true, "cleanStock": true } } ] }The gate record was produced with the lobotomized overrides isolated, to validate the patcher on its own terms (see caveat).
advisoryOrphansare the Piebald-AI#26 override names — advisory-only, not part of the Four-zeros verdict.Scope / caveat
This validates the patcher (binary patches + prompt extraction). It does not touch
lobotomized-claude-code. That repo's overrides have a pre-existing slot-name drift — references like${PROMPT_VAR_0}and${CRON_DURABLE_FLAG}that match neither 2.1.168 nor 2.1.169 (the overrides are pinned at old ccVersions whose prompts were since restructured/renamed). Tracked as dividedby/tweakcc-maint#26, independent of this bump.Sequencing: the identifierMap-union / skip-unresolved-placeholder detector (PR #4 / dividedby/tweakcc-maint#45) is the runtime guard for exactly that unresolved-placeholder case; recommend landing #4 as well, though these files are disjoint and this PR does not depend on it.
Refs dividedby/tweakcc-maint#58.