Skip to content

v0.2.0 — HyperFrames ecosystem rebase (M0–M6)

Latest

Choose a tag to compare

@nebrass nebrass released this 04 Aug 15:02
69eb569

Rebases the skill on the HyperFrames ecosystem (#34, milestones M0–M6). The finding behind it: roughly 70–85% of the phase prose had drifted into a hand-maintained shadow copy of the upstream manual, while the ecosystem had shipped real owners for nearly all of it. This release deletes the shadow copy and keeps the layer that has no upstream equivalent — the consent doctrine, revision fingerprints, capture determinism, and reviewed captions.

hve-video-director — this promo was made by the tool it describes

Watch the 90-second v0.2.0 promo — produced end-to-end by this release itself, with a human granting all six phase approvals. The MP4 is attached below. It is a separate project from example/, not a render of it.

No generated project is stranded: nothing is gated on the storyboard's shape, and a project created before this release still resumes.

Upgrading

npx skills add nebrass/hve-video-director --global

No migration is required. v0.1.0 and its published asset are unchanged — this is a new version, not an amended one.

Added

  • The reasoning layer (M1) — reasoning/ and grammar/ are first-class skill directories. reasoning/scene-analysis.md owns the twelve per-frame questions, the closed set of director keys, and the single-sourced cognitive-load budgets; reasoning/capability-catalog.md owns the capability-tag vocabulary and turns derived tags into a runtime.
  • compat/ecosystem.md — the compatibility thin waist (ADR-007). The only file permitted to hold intra-skill paths for ecosystem skills, so an upstream relayout is a one-row edit. Enforced both ways by test_compat_pointers.py.
  • Frame packets (M5) — a builder receives one ephemeral packet per frame and returns exactly one scene file. Regenerated every run, never committed.
  • A numeric seam gate (M3) — transition quality was enforced by prose DON'Ts; Phase 4 now writes a seam ledger, stamps it (SEAM_STAMP) and verifies it (SEAM_VERIFIER). Dissolves cannot be ledger rows, and Phase 4 reports the unverified boundary count either way.
  • The official storyboard shape (M4) — buys the upstream parser, Studio contact-sheet review, and the structured frame-comments channel; this skill's keys ride along as preserved extras.
  • ADR-001…ADR-008, plus the design review that produced them.

Changed

  • Phase-5 audio generation is delegated to the media-use engine (M2). Delegation stops at generation: the exact-track music confirmation, the caption review contract, the verified mix recipes and render approval remain this skill's governance (ADR-001).
  • npx hyperframes check is the required final gate; validate/inspect/layout are deprecated aliases.
  • example/ is regenerated — a 60s promo the skill made about itself (product_surface: none, 8 frames, 4 verified z-seams, Three.js on exactly one frame). Its .hve/brief-state.json is the consent record that makes the claim checkable.
  • BRIEF_FORMAT was deliberately not adopted — its run-shape contract skips questions the request already answers, which contradicts the consent doctrine.

Removed

  • The local acquisition fallbacks (M6). generate_voiceover.py loses its ElevenLabs half, but the file survives: --assemble-only is the section assembler both audio paths still use.

Fixed

  • Sparse keyframes in normalized terminal clips (#35) — agg emits change-only frames, so x264 could leave keyframes 8.33s apart and the renderer produced a black or frozen clip while lint, check and the seam gate all passed green. The GOP is now pinned to the output fps everywhere it is set, and stitch_clip.py derives it from --fps so the two cannot desync.

Full changelog: v0.1.0...v0.2.0