Create in agent chat. Direct with stage skills. Prove with immutable receipts.
Three masterclass films were produced, technically verified, and packaged locally. They are ready for human review and remain unreleased and unpublished.
1. Canonical 7-stage state machine
The seven-stage model names research_brief and proposal_packet contracts. This saved run folds research and proposal into its idea stage and brief artifact; it does not contain separate files with those contract names. The table maps the model to the actual saved records.
flowchart LR R["research_brief"] --> P["proposal_packet"] P --> S["script"] S --> SC["scene_plan"] SC --> A["asset_manifest"] A --> E["edit_decisions"] E --> C["checkpoint_compose"]
| Stage | Contract / embedded artifact | Worked example path (solo-to-swarm-speedrun-masterclass) |
|---|---|---|
| 1. Research | Research material retained in brief (not a separate research_brief.json) | projects/solo-to-swarm-speedrun-masterclass/artifacts/brief.json |
| 2. Proposal | Approved idea: artifacts.brief (not a separate proposal_packet.json) | projects/solo-to-swarm-speedrun-masterclass/checkpoint_idea.json |
| 3. Script | script.json (artifacts.script) | projects/solo-to-swarm-speedrun-masterclass/artifacts/script.json |
| 4. Scene plan | scene_plan.json (artifacts.scene_plan) | projects/solo-to-swarm-speedrun-masterclass/artifacts/scene_plan.json |
| 5. Assets | asset_manifest.json (artifacts.asset_manifest) | projects/solo-to-swarm-speedrun-masterclass/artifacts/asset_manifest.json |
| 6. Edit | edit_decisions.json (artifacts.edit_decisions) | projects/solo-to-swarm-speedrun-masterclass/artifacts/edit_decisions.json |
| 7. Compose | Completed checkpoint; metadata.final_media_accepted is technical acceptance only | projects/solo-to-swarm-speedrun-masterclass/checkpoint_compose.json |
2. Runtime delivery metrics
These three films have distinct creative briefs, scene counts, and treatments. They are real production deliverables, not a controlled comparative benchmark.
| Project | Runtime & treatment | Render time | Frames (30 fps) | Duration | MP4 size | Archive digest |
|---|---|---|---|---|---|---|
openmontage-practical-speedrun-hyperframes | HyperFrames Atelier (HTML5, GSAP, SVG) | 44.7 min (2,682 s) | 19,937 | 11:04.567 | 39.6 MB | 7bcc2310... |
openmontage-practical-speedrun-remotion | Remotion Atelier (React, TypeScript, Spring) | 83.0 min (4,979 s) | 19,562 | 10:52.067 | 32.6 MB | 9810c4f5... |
solo-to-swarm-speedrun-masterclass | Hybrid (Remotion master + 12 native HF inserts) | 164.6 min (9,876 s) | 21,569 | 11:58.967 | 47.9 MB | dad85d96... |
(Solo-to-Swarm masterclass integrates 12 pre-rendered native HyperFrames SVG intermediate clips, validated in artifacts/native-inserts-independent-proof.json totaling 8,640 frames).
3. Retained production costs
Total retained production spend: 0 other ($0.00 graphics, music, finishing, composition).
| Project | Retained narration text | Billed model rate | Usage cost | Other spend | Accounting notes |
|---|---|---|---|---|---|
| HyperFrames Atelier | 9,466 chars (28 sections) | $15.00 / 1M chars | $0.14199 | $0.00 | Retained xAI Iris TTS; local vector SVG |
| Remotion Atelier | 9,274 chars (28 sections) | $15.00 / 1M chars | $0.13911 | $0.00 | Retained xAI Iris TTS; local React styling |
| Solo to Swarm | 9,278 chars (30 sections) | $15.00 / 1M chars | $0.13917 | $0.00 | Retained xAI Iris TTS; local Git sandbox |
Scope limitation: Usage estimates cover retained final narration text only. They exclude exploratory auditions, rejected takes, and untracked host compute.
4. Operational rules for fresh sessions
Hard don’ts (immutable deliverables)
- Never re-render, re-package, or re-synthesize TTS: deliverables are technically accepted and checksummed.
- Never cut narration or apply
atempo: audio timing is frozen. - No paid calls of any kind: no additional production spend during handoff.
- Never edit remotion-composer/src, nginx, auth, or shared Backlot/Studios: except approved join-key fix in
backlot/state.py. - Never touch provider configurations: preserve
.omp/config.yml(modelRoles.task: null,providers.tts: xai). - Never publish media without explicit human authorization: local technical acceptance is not publication.
- Never delete rejected evidence: artifacts under
projects/*/artifacts/rejected/must remain intact.
Production genius rules
- Serial native renders: execute full-film renders sequentially; stop only verified project-owned orphan Chrome or ffmpeg processes before launch.
- Short scratch paths: render intermediate frames under
projects/.native-render-tmp/to avoid Chromium UNIX socket limits; never use tmpfs/tmp. - Receipts over prose: verify recorded files, frame counts, and SHA-256 digests directly rather than relying on assistant narratives.
- Quiescent connected playback proof: verify full loopback range requests and uninterrupted playback to the video ending.
- Full-resolution legibility audits: check full 1920×1080 still frames for terminal and label contrast; review grids downscale too far to detect legibility flaws.
- Approval policy once: record the
approval_policydecision up front in the checkpoint log to eliminate repetitive user confirmation loops. scene_idmust matchscene_plan.scenes[].id: Backlot joins assets to scenes using scene plan IDs, not script section IDs.
5. Technical evidence & records
All media files remain local to the host operator checkout behind authentication. Text documents and manifests are served over the authenticated Backlot /media/{project_id}/{file_path} route (requires active loca.zone SSO).
| Project / Record | Canonical technical acceptance (SSO) | Package README & manifest (SSO) | Storyboard board (SSO) |
|---|---|---|---|
openmontage-practical-speedrun-hyperframes | HF technical acceptance | HF package README | HF Backlot board |
openmontage-practical-speedrun-remotion | RM technical acceptance | RM package README | RM Backlot board |
solo-to-swarm-speedrun-masterclass | SW technical acceptance | SW package README | SW Backlot board |
Cumulative multi-project proof: Three-film delivery proof (SSO) verifies 86 MP3s (28,942,080 audio bytes), 45 citations, and all delivery archive hashes. Exact MP4 video streams require human release approval prior to public hosting.