# Proof Lab 01: The cost of an accepted exact-text video

Protocol `PL-01-v1`, prepared September 19, 2026. Prospective runs have not started. Spending authorized by this packet: $0. Proposed ceiling for a later authorized pilot: USD $60, inclusive of provider charges, credits purchased for this study, tax and fees. Do not purchase anything or consume paid credits without explicit approval of purpose and amount.

## The question

Can a creator get one usable four-second push-in on a supplied title card while preserving the text and layout? What do failed attempts and active human repair add to the provider charge?

This is a deliberately narrow first protocol, chosen because Kingy already owns the fixture and retains comparable attempts. It can become a defensible methods-led article quickly. It is not a complete advertisement benchmark, a video-model leaderboard, or a claim of broadcast-ready filmmaking. A later study can test a real 30–60-second commercial after this collection and judging method works.

## Reuse what exists

The live [exact-text recipe](https://kingy.ai/make-this/recipe-video-exact-text/) includes an original procedural PNG, six historical MP4s, prompts/settings and a charge ledger. The [Cost of AI Work page](https://kingy.ai/cost-of-ai-work/) separates strict JSON acceptance from historical video usability decisions.

Inputs and retained evidence:

* [Original first-frame PNG](https://kingy.ai/wp-content/plugins/kingy-workbench/assets/video-exact-text-input.png)
* [Complete retained six-attempt recipe pack](https://kingy.ai/wp-content/plugins/kingy-workbench/assets/video-exact-text-recipe.zip)
* [Historical charge ledger](https://kingy.ai/wp-content/plugins/kingy-workbench/assets/video-exact-text-ledger.csv)

The page records two attempts each for Veo 3.1 Lite, Seedance 2.0 Fast and Kling 3.0 Standard. Those are the proposed three workflows for this pilot. Their retained route availability check was September 13; current account access, price and exact model IDs must be recorded before a new run. Do not silently substitute a new version under the old name.

Historical usability labels remain unchanged. A new strict rescore is a separate retrospective result. Original repair time is unknown and cannot be reconstructed from the old clips. The new prospective series is the only place this protocol can establish recorded human-intervention time.

## Roles and setup

Curtis owns the question and publication judgment. One operator runs the fixed workflow and records time. A second reviewer scores blinded outputs without seeing provider names or charges; if a second human is unavailable, label the result single-reviewer and do not claim independent human validation. An AI screen can assist but cannot be relabeled human judgment.

Before generation record the exact route/model/version, provider, account plan, input PNG hash, prompt hash, requested and returned settings, source price URL/date, expected maximum charge, rights/terms and account-access result. Display the historical source date on old evidence. Do not use promotional credits to hide costs: retain consumed units and their known charge/allocation separately.

Retain current route settings in `proof-run-sheet.json`. It is prepopulated with nine planned jobs and empty outcome fields, not fabricated results.

## Fixed task and prompt

Supply the unchanged original PNG as the single first frame. No extra reference image, hidden prompt rewrite, upscaler or audio generation.

Copy this exact baseline prompt:

> A continuous four-second shot of the exact test sign shown. Perform a slow 15 percent camera push-in. Keep every character in SHOT ATLAS SANDBOX, PACK 03, and TEXT MUST STAY EXACT unchanged, correctly spelled, fully readable and geometrically stable in every frame. Preserve all corner fiducials. No cut, no added text, no crop.

Request 16:9, 720p, four seconds, audio off and prompt enhancement off. If a route does not support a setting, record the difference before running. Use the common supported route configuration where the task remains comparable; otherwise exclude that workflow and report why. Do not crop a longer native output to four seconds and call it the same generation task without stating the native duration and full cost.

Three independent planned jobs per workflow; up to three generated attempts per job. Use requested initial seeds 271828, 314159 and 161803 for repetitions 1–3 if supported, with attempt offsets +1 and +2. Equal seed values do not imply equal random samples across providers. Record unsupported/ignored seeds as such.

Retry prompt for attempts 2 and 3, unchanged except for the original prompt preceding it:

> Repeat the same task from the original first frame. Preserve the three specified text lines and all corner fiducials throughout the shot. Keep the motion continuous and end approximately 15 percent closer, without a cut or crop.

Always restart from the original PNG. Retain all earlier outputs. No prompt tuning per vendor after seeing a score.

## Balanced run order

Run sequentially, with one provider request outstanding at a time so charge/time attribution stays clear:

| Block | Job order |
|---|---|
| 1, seed 271828 | Veo → Seedance → Kling |
| 2, seed 314159 | Seedance → Kling → Veo |
| 3, seed 161803 | Kling → Veo → Seedance |

This rotates order effects; it is not a large randomized benchmark. Stop generation for a job after its first raw pass or after three attempts. Network errors, safety refusals, route failures and billed failures stay in the ledger. A billing timeout does not permit a blind retry that might incur another charge: first resolve whether a job was accepted/billed.

## Acceptance fixed before new runs

Every criterion must pass. A weighted aesthetic score cannot compensate for a failed requirement.

| Criterion | Pass rule | Evidence |
|---|---|---|
| File usable | Decodes; 16:9; requested 720p-class native output; duration 4.0 seconds ±0.25 seconds | Media metadata and playback |
| Exact text | All three required lines remain correctly spelled, in order, readable and unoccluded throughout | Full normal-speed and slow review; inspect every decoded frame for anomalies, with OCR as assistance only |
| Card retained | All original corner fiducials remain visible; no new text, crop, cut or layout replacement in raw output | Full-frame review and flagged-frame images |
| Requested movement | Continuous forward push; final card width is 1.10–1.20 × initial width; no visible reset/backward jump | Measure the same card-boundary landmarks on first/last stable frames and inspect intermediate motion |
| Temporal integrity | No illegible smear, duplicate character, geometry tear or single-frame flash violating the above | Frame-level failure note/timecode; uncertainty goes to review, not pass |

Before paid runs, inspect whether the source PNG has sufficient margin for a 15% push-in while retaining every required fiducial. If the brief is geometrically impossible, revise the task and version the protocol before generation; do not discover this afterward and loosen the scoring. The historical recipe explicitly warns about cropping and softness, so this check matters.

“Readable” remains a human judgment even with OCR. Retain disagreements and the exact failing timestamp. Two reviewers decide raw pass/fail independently where available; unresolved disagreement is `needs_review`, excluded from accepted counts but included in expenditure.

## Assisted-result track

After the raw track closes, the operator may spend up to five active minutes repairing one best retained attempt per failed job. Allowed: deterministic compositing of the original owned card, keyframed motion, trim/export and ordinary color correction. No extra generative request, paid stock or paid tool purchase. Record what was replaced. Use an already available editor; otherwise leave assisted results unrun.

Judge the repaired export against the same visual acceptance rules, but label it human-assisted and retain both files. A wholly replaced card may pass the finished-task track; it cannot rescue the model's raw score. Record separate active minutes for setup, prompt/selection/retries, repair and export. Record wall-clock waiting separately, so parallel work is not misreported as labor savings.

## Costs and stopping

Nine jobs × up to three attempts = at most 27 fresh generations. The proposed per-request reservation cap is USD $1.50 including known extras, giving at most $40.50 in generation reservations. The remaining amount within the proposed $60 total is a buffer for tax/fees/known variations, not permission to run more attempts. If current quotes cannot fit the approved budget, stop and reduce scope through a revised protocol before generation.

No top-ups, subscriptions, alternate paid routes or additional paid credits are authorized by approval of a different purpose. Pre-existing paid-credit consumption still requires Curtis's approval. Do not spend the buffer on promotion.

Stop on exhausted authorization, unresolved charge, unexpected data exposure, changed model version, unavailable common task settings, or inability to retain originals. A partially completed study is valid to report as partial.

For each workflow show:

* raw accepted jobs / attempted jobs, and first-attempt passes separately;
* accepted human-assisted jobs separately;
* all provider charges, including failures, with unknown charges visible;
* provider cost per accepted job, undefined when none succeeds;
* active operator minutes, repair minutes and wall-clock completion time;
* combined variable cost at explicitly assumed labor rates of USD $0, $30 and $60/hour;
* full upfront purchase/subscription commitment, if any, separately from allocated usage cost.

Combined variable cost uses all measured active labor and all known provider charges, divided by accepted jobs. It excludes unrecorded equipment, electricity and subscription overhead; do not call it total economic cost. At zero successes show total spent and “no accepted job.” Do not divide by only the successful attempt's charge or drop the time spent on failures.

Three jobs per workflow can reveal failures and workflow differences but cannot establish general reliability. Even three passes out of three has wide uncertainty. Publish counts and conditions; avoid a universal “best model” conclusion.

## What ships after execution

Use the existing Cost of AI Work and Make This surfaces. Do not launch a separate Proof Lab app. Create one study detail page only after checking that no existing owner already fits; the proposed title is “What an exact-text AI video costs after retries and repair.” No URL or outcome is claimed live by this packet.

Article outline: task and dated verdict; raw versus assisted result table; all attempts and failures; provider/labor accounting; exact reproduction pack; limitations; change log. Preserve historical and prospective datasets separately.

The video should show the brief, one failure, the accepted or unresolved output, and its complete known cost. Link to the exact study/recipe. Suggested truthful opening before results exist: “We gave three video workflows the same title card and required the text to survive the camera move.” Do not write the winner into the script now.

Day 10 publication requires complete data for every claimed result, rights/privacy review, documented judging, working evidence files, and a source-dated method. If no fresh budget is approved, ship the protocol and clearly labeled historical reassessment draft; fresh model comparison results remain unrun.
