From e5a5e6b151aaf0dd489456c2681da6d664983de4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20=C3=81ngel?= Date: Mon, 24 Aug 2026 14:22:03 -0400 Subject: [PATCH] fix(cli): keep overlap waivers local to marked text (#3464) * fix(cli): scope overlap waiver to marked text * fix(skills): guard changelog caption rail * fix(skills): densify changelog caption checks * test(skills): satisfy strict seek typing --- .agents/skills/changelog-video/SKILL.md | 5 ++- .../examples/master-skeleton.html | 7 +-- .../changelog-video/references/build-spec.md | 4 +- .claude/skills/changelog-video/SKILL.md | 5 ++- .../examples/master-skeleton.html | 7 +-- .../changelog-video/references/build-spec.md | 4 +- docs/packages/cli.mdx | 5 ++- docs/prompting/rules-and-anti-patterns.mdx | 3 ++ .../commands/changelogSkillContent.test.ts | 30 +++++++++++++ packages/cli/src/commands/check.test.ts | 43 +++++++++++++++++++ .../cli/src/commands/layout-audit.browser.js | 5 ++- .../src/commands/layout-audit.browser.test.ts | 28 ++++++++++-- skills-manifest.json | 2 +- .../references/lint-validate-inspect.md | 2 +- 14 files changed, 128 insertions(+), 22 deletions(-) create mode 100644 packages/cli/src/commands/changelogSkillContent.test.ts diff --git a/.agents/skills/changelog-video/SKILL.md b/.agents/skills/changelog-video/SKILL.md index 0bfd4f291..02c68de30 100644 --- a/.agents/skills/changelog-video/SKILL.md +++ b/.agents/skills/changelog-video/SKILL.md @@ -145,9 +145,10 @@ scaffold. ### 6 · Gates (all green before presenting) -1. `bun run --cwd packages/cli hyperframes check` (or the installed +1. `bun run --cwd packages/cli hyperframes check --caption-zone "x0=0;y0=.90;x1=1;y1=1;severity=error;seek=.02,.06,.10,.14,.18,.22,.26,.30,.34,.38,.42,.46,.50,.54,.58,.62,.66,.70,.74,.78,.82,.86,.90,.94,.98"` (or the installed `hyperframes` CLI from the repo-local `skills/hyperframes-cli/` skill) — - 0 errors (contrast: dim text ≥ .66 alpha). Do NOT reach for + 0 errors (contrast: dim text ≥ .66 alpha; scene content stays above the + caption rail). Do NOT reach for `npx hyperframes@latest`; the tracked repo-local CLI is the source of truth for the composition contract this skill produces against. 2. `seam-gate.mjs verify` — 0 fail. diff --git a/.agents/skills/changelog-video/examples/master-skeleton.html b/.agents/skills/changelog-video/examples/master-skeleton.html index 35a6f81c2..401b22285 100644 --- a/.agents/skills/changelog-video/examples/master-skeleton.html +++ b/.agents/skills/changelog-video/examples/master-skeleton.html @@ -48,7 +48,7 @@
HYPERFRAMES WEEKLY ·
-
+
@@ -57,8 +57,9 @@ -
+ done ≥0.45s before the next. Put data-layout-allow-overlap only on + the specific text blocks that deliberately layer. --> +
01 ·
diff --git a/.agents/skills/changelog-video/references/build-spec.md b/.agents/skills/changelog-video/references/build-spec.md index d376e7bbd..395d6bf8d 100644 --- a/.agents/skills/changelog-video/references/build-spec.md +++ b/.agents/skills/changelog-video/references/build-spec.md @@ -102,8 +102,8 @@ otherwise) and must stay flat 2D (no 3D ancestors). ## Lint/check gotchas (all hit before, all pre-solved) - Mock containers with intentional stacking: `data-layout-allow-overlap` on - the slide root; elements a playhead/line crosses: - `data-layout-allow-occlusion`. + each text block that deliberately participates, never on the slide root; + elements a playhead/line crosses: `data-layout-allow-occlusion`. - Dim text: `rgba(245,246,244,.66)` minimum (contrast gate). - Audio: every `