test(parity): rebaseline v1.57.7.0 → v1.64.1.0 + skeleton-cap headroom

The two parallel v1.64 waves (code-smell fix wave + main's #2571) each
added shared-preamble prose, pushing document-release / design-consultation
/ cso past their size ratios on the v1.57.7.0 anchor and four carved
skeletons (plan-ceo-review, plan-eng-review, office-hours,
design-consultation) 22-280 B over their absolute caps. New baseline is
union-normalized (skeleton + sections/*.md, matching what the harness
measures); caps get +~1 KB headroom each with per-cap rationale. The
v1.57.7.0 fixture stays in test/fixtures/ for the audit trail, and
capture-parity-baseline.ts now documents the union-normalization step so
the next rebaseline doesn't re-trip on it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Garry Tan
2026-08-15 08:40:27 -07:00
co-authored by Claude Fable 5
parent 45bc02952d
commit 8f048370a4
4 changed files with 677 additions and 14 deletions
+8
View File
@@ -22,6 +22,14 @@ import { execSync } from 'child_process';
export interface SkillBaselineEntry {
skill: string;
/**
* SKILL.md file bytes as captured. NOTE for rebaselines: the parity harness
* compares UNION bytes (skeleton + sections/*.md) against this field, so a
* committed baseline fixture must have carved skills' entries normalized to
* union size (skeleton + sum of sections/*.md) or every carved skill reads
* as 1.2-1.4x over on day one. The v1.57.7.0 and v1.64.1.0 fixtures are
* union-normalized.
*/
skillMdBytes: number;
skillMdLines: number;
estTokens: number; // ~4 chars/token heuristic
+12 -4
View File
@@ -144,7 +144,9 @@ export const CARVE_GUARDS: Record<string, CarveGuard> = {
},
behavioral: 'external',
externalTest: 'test/skill-e2e-plan-ceo-review-section-loading.test.ts',
maxSkeletonBytes: 90_000,
// v1.64.1.0: shared-preamble prose from the two parallel v1.64 waves lands
// the skeleton at 90,280 B; +1 KB headroom.
maxSkeletonBytes: 91_000,
minUnionBytes: 80_000,
mustContain: ['SCOPE EXPANSION', 'SELECTIVE EXPANSION', 'HOLD SCOPE', 'SCOPE REDUCTION'],
// Default-on Codex outside-voice (codexPreflight block + CODEX_MODE branch
@@ -165,7 +167,9 @@ export const CARVE_GUARDS: Record<string, CarveGuard> = {
behavioral: 'plan',
// v1.2.0 activation lift (shared first-run-guidance preamble) + #2077 ask-first scope gate.
// +~1 KB: plan-mode auto-select-B scope-gate exceptions (2026-08).
maxSkeletonBytes: 68_000,
// v1.64.1.0: shared-preamble prose from the two parallel v1.64 waves lands
// the skeleton at 68,163 B; +~1 KB headroom.
maxSkeletonBytes: 69_000,
minUnionBytes: 70_000,
mustContain: ['Architecture', 'Code Quality', 'Test', 'Performance'],
// Cross-cutting preamble growth (v1.57.2.0 AUQ-failure prose fallback + the
@@ -240,7 +244,9 @@ export const CARVE_GUARDS: Record<string, CarveGuard> = {
behavioral: 'prompt',
// v1.2.0 activation lift: first-run-guidance section in the shared preamble,
// plus the P1 office-hours closing handoff (AUQ that launches the next skill).
maxSkeletonBytes: 98_000,
// v1.64.1.0: shared-preamble prose from the two parallel v1.64 waves lands
// the skeleton at 98,193 B; +~1 KB headroom.
maxSkeletonBytes: 99_000,
minUnionBytes: 70_000,
mustContain: ['design doc', 'problem statement'],
maxSizeRatio: 1.07,
@@ -289,7 +295,9 @@ export const CARVE_GUARDS: Record<string, CarveGuard> = {
// +Conductor AUQ-default-prose rule + one-way/continuation safety in the
// always-loaded AskUserQuestion Format section.
// v1.2.0 activation lift: first-run-guidance section in the shared preamble.
maxSkeletonBytes: 69_000,
// v1.64.1.0: shared-preamble prose from the two parallel v1.64 waves lands
// the skeleton at 69,022 B; +~1 KB headroom.
maxSkeletonBytes: 70_000,
minUnionBytes: 72_000,
mustContain: ['Typography', 'Color', 'Aesthetic Direction'],
// Cross-cutting preamble growth (v1.57.2.0 AUQ-failure prose fallback ~2KB +