Skip to content

Deckformance: external video boundary and felt editorial master - #2

Merged
lhfer merged 4 commits into
mainfrom
feat/external-video-provider-boundary
Aug 21, 2026
Merged

lhfer merged 4 commits into
mainfrom
feat/external-video-provider-boundary

Conversation

@lhfer

@lhfer lhfer commented Aug 21, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Require every v2 dynamic slide to use an external generate-video provider receipt bound to provider, model, request ID, prompt hash, motionPlan hash, slide/layer IDs, and the exact MP4 bytes.
  • Add HTTP, Command, Grok, and Qwen video provider adapters with submit, poll, download, final media validation, and hash-bound receipts.
  • Keep motionPlan limited to video direction and PowerPoint playback timing; block import-video, poster, native/CSS/programmatic motion, missing receipts, missing MP4, and stale media from candidate paths.
  • Add the focused felt_editorial_split_master: one centered 2.08:1 card, selected 57/43 media-panel ratio, strict media-left/media-right mirrors, editorial Chinese shaping, near-6:5 media contract, and user-uploaded characterSet.referenceImages with no default mascot.
  • Package the source-derived 1152×554 RGBA felt-edge mask so jobs can preserve the reference contour and adaptive canvas color instead of synthesizing a sawtooth/scallop.
  • Require story-specific felt environments with foreground, midground, and background depth; “clean” may not collapse into a plain studio wall, empty tabletop, or unused sky.
  • Make felt panel authoring PowerPoint-hairline-safe: builders consume the canonical no-fill panelShape, and package validation rejects any exported felt-panel-* with a visible or default OOXML line fill.
  • Document the design principles and Skill routing while keeping the master independent from the broader Layout Intelligence worktree changes.

Validation

  • Focused felt-master tests: 11/11 passed locally.
  • Full local repository suite: 177/177 passed.
  • The edge-mask test pins dimensions, RGBA color type, and SHA-256.
  • Both strict mirrors, all three ratio candidates, semantic Chinese headline breaks, body/closing separation, uploaded-character validation, and post-export panel outline validation are covered.
  • A safe OOXML fixture with <a:noFill/> passes; the previous zero-width charcoal solidFill fixture fails with a precise hairline error.
  • Node 20, Node 22, and coverage checks are required on the pushed commits.

Honest limitations

  • The reusable master code does not claim a live provider run or PowerPoint playback result; those are job-level evidence, separate from the Skill.
  • Grok CLI is authenticated on the production Mac, but its built-in video tool exposes a CLI tool-call/session identifier rather than the upstream xAI provider request ID. Job receipts must record that boundary explicitly and must not invent provider IDs.
  • Synthetic and imported media remain test-only and do not prove external generation.

@lhfer lhfer changed the title Deckformance: require real external video generation for dynamic slides Deckformance: external video boundary and felt editorial master Aug 21, 2026
@lhfer
lhfer marked this pull request as ready for review August 21, 2026 17:56
@lhfer
lhfer merged commit 6d8ae9f into main Aug 21, 2026
6 checks 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