Skip to content

Plan/assemble craft: validator-true prose, the signature-safe envelope, and coverage as QA - #21

Merged
leochenpm merged 1 commit into
sync/design-craftfrom
sync/plan-assemble-craft
Aug 12, 2026
Merged

Plan/assemble craft: validator-true prose, the signature-safe envelope, and coverage as QA#21
leochenpm merged 1 commit into
sync/design-craftfrom
sync/plan-assemble-craft

Conversation

@leochenpm

Copy link
Copy Markdown
Collaborator

Batch 8/8 of the release_1.6.5 sync (plan/edit/assemble layer, prompt-only). Stacked on #20. Re-mapped by hand from Orkas commits 9378b315a, e2a2797f3, 33904ce59, 13c145d6a, 3b9451d78, fb1cd2991.

The headline fix: prose that invalidated its own approval

stage-edit step 4 and orchestration both instructed writing top-level draft / video keys into plan.json after a successful render. But gate-control's own rule says unknown plan fields remain signed so new semantics cannot bypass review — and approval.ts reserves exactly two envelopes (_runtime, _catalog) as non-approval-bearing. Following the skill as written invalidated the Gate B signature the moment the render landed. Delivery locators now go under _runtime.render.* in all three files.

Prose brought in line with the validator (the #15 / #14 code, named)

Craft

Verification

Full OVS_E2E=1 suite 275/276; content tests pin the error codes, the _runtime rule (and the absence of the old top-level instruction), the 0.95 trap, and the two-turn Gate B.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VL7mRpmEphLAbcH7YmABnV

…re-safe envelope, and coverage as QA

Sync of the plan/edit/assemble refinements from Orkas release_1.6.5
(9378b315a, e2a2797f3, 33904ce59, f9cd7a16d, 13c145d6a, 3b9451d78,
fb1cd2991, 8a94dc1c0 context), prompt-only, re-mapped onto the ovs
pack:

- stage-plan: edit_strategy is four non-empty string ARRAYS at the plan
  top level with a closed decision-signal set (the validator already
  enforced E_EDIT_STRATEGY_BOUNDARY/E_EDIT_STRATEGY_SIGNAL; the prose
  never said so); target_sec is a DURATION and windows must not overlap
  (E_NARRATION_WINDOWS_OVERLAP, landed in #15); a temporal anchor signs
  the consumed interval; flagged risks resolve at the Production plan
  confirmation (both stray "direction confirmation" pointers fixed);
  full-frame overlays are a plan-shape problem (the guard landed in
  #14); silent beats are reserved, not speech budget; Gate B is two
  turns — present the validator's own summary verbatim, never twice,
  and "an unapproved plan after the user answered means you owe the
  transition, not another confirmation".
- stage-edit: the array-shape rule with its error code; may_change must
  name every authorized change class; delivery locators move into the
  reserved `_runtime` envelope — the old instruction to write top-level
  `draft`/`video` keys invalidated the Gate B signature on success,
  because unknown top-level plan fields are approval-bearing by
  gate-control's own rule (approval.ts reserves `_runtime`/`_catalog`).
- stage-assemble: the real trim flags (`--start/--end/--out`); only
  compose segments need frame evidence (media segments are captured by
  their produced_path); the overlay-opaque refusal is a re-plan, not a
  retry; the coverage report is QA — coverageRatio only says how far
  the LAST line reached, a half-silent track can still score 0.95;
  never speed up speech or pad with filler; skip a caption line that
  repeats visible on-screen copy; delivery QA holds every route to the
  same bar, including hand-written ffmpeg; `_runtime` write-back rule.
- orchestration: the plan.json record points at `_runtime.render.*`
  instead of a top-level `draft` key; narration fit revises OVER only.

Verified: full OVS_E2E=1 suite 275/276; content tests pin the error
codes, the envelope rule, the 0.95 trap, and the two-turn Gate B.

Prompt audit: every added clause states behavior the code actually has
(validator codes from #15, the overlay guard from #14, the reserved
envelope in approval.ts) or fixes prose that contradicted it (top-level
draft/video keys, "direction confirmation" pointers, over/under fit);
no clause duplicates gate-control authorization or #19's checkpoint
craft; the trim command was verified against the CLI definition.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL7mRpmEphLAbcH7YmABnV
@leochenpm
leochenpm merged commit c6b57dc into sync/design-craft Aug 12, 2026
1 check passed
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