Ship

Get the owner's approval of the draft, render the final with bin/vawe ship, and wait for the verdict.

At the end of this page you have out/<name>.mp4, the finalA final is the full-quality render: 60 fps, motion blur and the mixed audio, followed by a final check., and a verdict from a fresh judge. This is stage 10 of the loopThe loop is the ten stages that make a film: brief, references, design kit, states, board, draft, motion pass, critique, fix and final..

You need a page that passed the critique on drafts. ship refuses without two things: a fresh review of the current page, and the ownerThe owner is the person who asked for the film and signs it off.’s approval of the full draft.

Steps

Get a fresh review

bin/vawe judge films/hello/page.html --fresh

This starts its own session. If the claude CLI is missing, it exits 2. Then run bin/vawe critique from a separate terminal (see Critique and fix). Either one must run on the page as it is now. An edit after the review makes the review stale.

Show the draft to the owner

bin/vawe sheet out/hello-draft.mp4

Show the full draft, then stop. The owner approvesTo approve is to record that the owner accepts the full draft, with vawe approve <page>. the draft with bin/vawe approve films/hello/page.html. An agent never runs it. The approval holds only for the page as it was when the owner approved it. If you change the page, ask again.

Start the final

bin/vawe ship films/hello/page.html

The final is 60 fps, with motion blur and the audio mixed. The job runs in the background. Before it starts, the verb prints a warning if the brief is not done (see below).

Wait for the job

bin/vawe wait films/hello/page.html

One call waits up to about 3.5 minutes and prints a progress line each minute. If it says STILL RUNNING, call it again. Run it alone. For a final, bin/vawe ship --status films/hello/page.html --wait does the same. While you wait, fill any empty Board or Motion pass rows, or prepare the critique notes.

Read the verdict

The result includes a final check and the judge. Fix the worst finding first. Iterate on drafts with bin/vawe dev until the verdict is PASS, then ship once more.

Four steps in a row: fresh review, approve, ship, wait.
Before a final: a fresh review, then the owner approves, then ship, then wait for the verdict.

Other forms

FlagWhat it does
--aspect allone file for each aspect; or give a W:H ratio such as 9:16
--out <path>the output file (not with --aspect all); the default is out/<name>.mp4
--param key=valuea page option, repeatable; the page reads it with new URLSearchParams(location.search); the default output name gets it (-look-riso)
--waitwait until the render ends, instead of a background job
--statusprint the progress or the result of a background render; with --wait, wait up to 3.5 minutes
--profileprint a cost table: frames, subframes, screenshots, capture and encode seconds, the 5 costliest seconds

What you see

Before the render, ship prints a warning when the brief is not done:

  • the “Board” is not filled;
  • the “Motion pass” is not filled;
  • the beats of the Board differ from the worlds of the page;
  • “Taken from” names a move that no Board move cell contains.

The warning is advice. The render goes on. The judge reads the same brief, so a plan that you keep on purpose needs a reason written in the brief.

If a gate refuses, the message says which one and ends with the command to run, for example no approval for hello or no fresh review of the current page.

What good looks like

  • The brief is done before the final. The Board and the Motion pass have rows.
  • The final follows a review and an approval of the same page. A PASS is never self-recorded.
  • A film that recreates a reference has passed bin/vawe critique --ref ... --final first. ship refuses until that loop passes. Read Match a reference film.

Common mistakes

What you seeWhyWhat to do
no fresh review of the current pageNo judge --fresh or separate-session critique ran on this pageRun one of the two commands in the message
The critique “ran in the session that rendered the draft”A VAWE_AGENT label does not make a new sessionRun it in a separate terminal or agent
no approval for <film> or the page changed after the approvalThe owner has not approved this versionShow the draft and stop; the owner runs bin/vawe approve
wait says STILL RUNNINGThe render takes longer than one callCall it again
The verdict names a secondThe judge found a defectFix it with bin/vawe dev <page> --from s --to s, then critique again

On this page