Pipeline Hub

format-warehouse

Demand-proof 'warehouse' ad for DawnBands, 30-45 s: packing-room b-roll (pouches stacked, orders packed, the band rattling silently on the packing bench) under a brand-voice VO that says why 10,000+ parents ordered it, cut against HER mornings, so the pile proves the mechanism works rather than standing in for it. Evidence status UNGROUNDED (no reference ad analysed yet).

Lane: vo-broll (VO + b-roll, scripts/vo_broll_runner · not built yet: 1 (see below) · source: /Users/ayden/.openclaw/workspace/skills/format-warehouse

SKILL.mdbeat-sheet.mdsources.mdEvals (6)Learnings (12)

Warehouse — beat sheet, footage truth, shot list

Evidence status: UNGROUNDED. Timings below come from the EVOLVE slots (vo-broll lane) and the common shape of demand-proof ads, not from a measured reference. Replace them with the dissector's measured pacing (procedure at the bottom) when Fish sends the real format #11 link.

Runtime 30-45 s at ≥3.0 wps final (lane floor) ≈ 100-150 words. Slots are ceilings: the voice sets the clock, a segment ends at its last word + 0.08 s (handoff law 1). Need 40 s? Write more words, never more silence.

Beats

# Beat EVOLVE slot Time Words Picture Job Line rules
1 Hook (×3) hook 0-3 s 3-7 her morning (door, knock, asleep kid), tier A; packing room / band on bench at 0 s only if Fish waives his 8-15 no-product-before-reveal rule Stop HER: her symptom + the pile Names her by an observable symptom; demand number optional; no backstory; never a pure "we sold out" mystery
2 Bridge (×3) bridge 3-8 s 12-25 her morning: door, third knock, asleep kid, clock (2-3 cuts) The burden is hers, the mornings caused it Pronoun-first; concrete counts/times from VOC; failed solutions generic (no brands, never bed shakers); no band
3 Objection hold 8-13 s 15-20 her face at the door / the kid asleep under noise Say her doubt before she does "He sleeps through everything. Why would a band work?" class, VOC-shaped
4 Claim hold 13-22 s 25-35 a phone alarm ringing beside a still kid → the band on a wrist, arm jolts (reaction-primary) Root cause + mechanism Fish's ruled lines verbatim: sound doesn't reach a deep-sleeping brain; touch gets through; silent to everyone else; keeps going until they turn it off
5 Proof (*-reveal) hold 22-30 s 20-30 pouches on shelving, hands packing, band shivering silent on the bench Social proof the mechanism works "10,000+ parents" as written; stock line only if true today; no invented order counts/per-day numbers/staff counts
6 Benefit hold 30-35 s 12-18 kid up and dressed, out the door; her coffee, quiet hallway Kid independence / her morning back Behavioural transformation shown, not stated as a feeling
7 CTA CTA 35-45 s 20-30 hand takes a pouch off the pile; end card (optional, --end-card; off by default per Fish 10-06) ≤2 s under "tap below" Offer + risk reversal Price from the live PDP JSON; 60-night guarantee as risk reversal, never the hook; one action

Split rule, measured from the cut list: packing room ≤50 % of runtime, her morning ≥40 %.

Footage-truth table (every scene gets a tag in the pack)

Tag What it is Lines allowed over it Never
real-dawn Footage Fish supplies of the real Dawn packing/fulfilment deictic ("today's orders", "this shelf") if Fish confirms it's true staff names without their consent
stock Pexels/stock warehouse or packing footage non-deictic: the line carries the claim, the picture illustrates "our warehouse", "our team", a counted pile as today's orders, competitor or other brands' packaging in frame
ai Generated b-roll (registry roles) non-deictic, same as stock presenting it as a real facility or a real person; "LIVE"/"behind the scenes at Dawn" overlays
animated (W2) cartoon-h3 deictic fine: reads as illustration a cartoon packer named as a real employee

Shot list by tier (core §2b; registry picks the model)

Shot Tier Source order Prompt/selection notes
Wire shelving stacked with pouches, out of focus C ai (Cheap simple-motion i2v) or stock pouches back-side or soft; slow handheld drift
Empty packing table, morning light C stock → ai plain table, tape gun, no labels
Band shivering silent on the wooden bench C ai "lies flat on… shivers in place against the wood, rattling with tiny rapid movements"; display dark; solid black inside and out
Hands sliding a band into a pouch / sealing the ziplock A real-dawn → ai (Photoreal role, one-unit proof) hands only, no face; closed fastened loop; pouch = composite if legible
Pile of pouches being counted into a crate A real-dawn → composite legible pouches only from assets/dawnbands-pouch-3d-transparent.png composites
Her door, the knock, the asleep kid B own dawn-raw → stock one actress, one kid per ad; kid in sleepwear
Band on wrist, arm jolts awake A own dawn-raw → ai reaction-primary; wrist down after; never raised to the face
Kid out the door, backpack on B own dawn-raw (creator-kris entryway clips) → stock same kid as the bridge (cast law applies to product clips too)
Hand takes a pouch (CTA) A real-dawn / own footage with pouch → composite pouch faces camera only if real or composited

Pack skeleton (W1, one file per hook variant; ILLUSTRATIVE values)

{
 "ad_slug": "wh-demand-a", "format": "vo-broll", "format_skill": "format-warehouse", "brand": "dawnbands",
 "created": "<date>", "status": "draft", "execution": "W1",
 "parent": "<recipe-B static whose callout + mechanism this reuses, with CPA>",
 "iteration": "proof slot: warehouse demand vs the static's proof",
 "stock_check": "<date> all variants available -> no scarcity lines",
 "pov": "narrator-expressive", "title": "<hook headline>", "end_card": "<price + 60 nights + tap below>",
 "scenes": [
  {"scene_id": "h1-hook", "vo": "<3-7 words>", "footage_truth": "stock",
   "shot": {"source_pref": "rip", "search_terms": ["mom knocking closed bedroom door morning"], "tags": ["mom", "door"]}},
  {"scene_id": "h1-bridge", "vo": "<12-25 words>", "footage_truth": "stock",
   "shot": {"source_pref": "rip", "search_terms": ["mom knocking on teen bedroom door morning"], "tags": ["mom", "door", "morning"]}},
  {"scene_id": "hold-proof-reveal", "vo": "<20-30 words>", "footage_truth": "ai",
   "shot": {"source_pref": "gen", "tags": ["product", "macro"], "gen_keywords": "band rattling on wooden bench"}}
 ]
}

Shared scenes (hold-*, cta) are byte-identical across -a/-b/-c; only h1-hook / h1-bridge differ (rename h2-*, h3-* per variant).

Structure example (ILLUSTRATIVE — shape only, not shipping copy; real lines come from VOC, the stake bank and Fish's approval)

  1. HOOK "Ten thousand moms stopped knocking twice." (her fist at the closed door; pouches here only with Fish's 8-15 waiver)
  2. BRIDGE "You knock at six forty. Again at six fifty. He doesn't move." (her at the door; the still kid; the clock)
  3. OBJECTION "And you've tried every alarm there is." (phone alarm ringing beside the sleeping kid)
  4. CLAIM "Sound doesn't reach a deep-sleeping brain. Touch gets through." (arm jolts awake, wrist down)
  5. PROOF "That's why more than ten thousand parents ordered one." (hands sealing a pouch; band shivering silent on the bench)
  6. BENEFIT "He's up before you knock. You get your morning back." (kid in the hallway, backpack on)
  7. CTA "Sixty nights to try it. Tap below." (hand lifts a pouch; end card (optional, --end-card; off by default per Fish 10-06))

Line rules (all beats)

  1. python3 scripts/ad_dissector.py "<foreplay share URL>" --slug warehouse-ref --brand-context "DawnBands silent vibrating wake-up wristband" (add --competitor if the source is a lane-leader in our niche: then the output is a gap map, never a template).
  2. Read output/ad-dissect/<slug>/dissect.md + pacing.json: cuts per 10 s, mean shot length, wps, beat roles, speaker (on-camera person vs VO), what's on screen at 0-3 s.
  3. Update this file: beat timings + word budgets from measured wps; the shot mix (how much warehouse vs life); whether a person speaks (if yes, that's W3 and the gates stay).
  4. Rewrite references/sources.md with the beat-by-beat paraphrase, keep / change list; flip the evidence status in SKILL.md §2; append a line to memory/learnings.jsonl.