Each row cost at least one round-trip, and some cost hours or hundreds of credits. Each one left a rule behind. "Another project" is a production made with the same tools between the films.
Brief and taste
| What you see | Why | The rule now |
|---|---|---|
| v1 rejected for its look: "way too.. gray", "color grading looked insane", "dont love the dot grid" | the look was assumed, not asked | Ask up front: native colour, one grade, or a print texture. Record the answer. |
| Plates "feel like a stock photo" | generic subjects: crowds, elderly or patient portraits, hands holding props | Change the idea entirely, not the seed, or make the shot pure motion design. |
| A sequel's song feels like a copy | it reused the last song's device, a countdown | A sequel never reuses the previous film's device. |
| Viewers read the lead as a teenager | age words and schoolgirl-coded wardrobe | Write an explicit adult age, use editorial wardrobe, and never write "young". |
| A taboo word turns up in a label or a file name | the taboos lived only in the brief | Put taboos in the project file and in every agent's prompt. The audit checks the board; grep code and file names before release. |
| "off pace and off vibe with the song" | the busiest picture sat on the quietest music | Measure picture motion against stem energy per section. |
| Agent-written style rules pulled work away from what the director liked | rules without a verdict behind them | Keep exemplars and verbatim verdicts. No style rule without the director's yes. |
| "youre oftne over cutting" | a fast song (180 BPM) cut on its lines and half bars, with a cutaway for every accent | Linger: one scene per lyric phrase or more, built inside the shot. The accents go into camera moves and actions. |
| The story's layers didn't read: "need to understand its the entertainment terminal better bc i didnt carch it at first" | the simulation, the seat-back screen and the real cabin shared one look | One look per level, a tag that names it, the real world untreated; show the physical screen around an interface. |
| "theres no compelling intro or story here, the opening should already introduce part of the story … we always need a hook" | the film opened on a mood | Open on a hook that tells part of the story, at the tier of the film's best passage. |
| "it should be like photography, i feel weird looking at a clipped off the edge ost and a claudia in the middle bottom of the screen" | elements placed where they fit, not composed | Compose every shot like a photograph: thirds, her big, every card inside the frame with margins. |
| "she shouldnt really be looking down on her phone, she should be immersed in a world" | a phone in her hand, its screen tracked onto the back of a phone Wan had drawn | She touches the world. A screen that matters is large in the world, and she works it with her hands. |
| "the waking uip and plugging in phone at the end is boring" | the ending went back to where the film began | End somewhere new: "she should enter a world with no phones, like escaping the truman show". |
| Two doors in a row at the end: "thats redundant" | two chapters each ended on a door | One door and one look back in the film. |
| "there is this temporal signature that screams claude now that a ton of people are making the videos. people say pacing or prosody." | shots timed in seconds and by a model's length limit, not in the music's bars; cuts that hid a take's faults | Write the film on the bar map: cuts only on bar lines, at a section, a phrase or a sung phrase's downbeat; moves in bars; a failed take made again, never cut around (tool 44). |
| "okay so i totally overindexed on the orbit thing lol … its kinda dizzying now" | a note about robotic-arm camera moves taken into every shot of the previz | One calm, classical move per shot, or none. A director's favourite device goes where the song asks for it. |
| "i think its like you litearlly use chromium and do frontend web dev to make these animations, and it ends up feeling like a website" | the films' motion design drawn as web graphics on top of the picture | Tell the story through shaders, mathematics made visible, and draw only the lyrics on top, small and classical. |
| "Idk if feels like you're adding ... items to increase complexity rather than compressing intricacy?" | shader worlds built by adding objects | One iterated rule per world, its light and colour from the loop (tool 49). |
| The pill inside the pill: "i kidna like but i feel like its too ordered or not understadnable enough" | the nested pills sat in a neat grid | Scatter them, at random sizes and tilts, so it reads as worlds inside worlds. |
| "it felt lazy like we were adding tags tarther than makin gan official aperture video" | captions and readouts put on the cut as tags, with no idea of the scene under them | One designed layer the whole film is seen through, composed shot by shot: her HUD (tool 55). |
| "i dont like the idea of a static shot of just a boom, or a wall with lettering" | singing shots of a hanging head, and walls of type | Every shot is a story event with an interaction: she reaches for a memory on a screen, a panel arm hands her something, the camera moves with the scene. |
| "the composition of the animations, past just the heads-up display thing, don't feel like they understand the composition of the scene. They just feel completely independent." | the overlay placed by rule, the same way in every shot | Look at each shot's frames first (its subject, its empty space, where the eye goes), then place each element with a reason (tool 56). |
| "every time there's a shot that's literally a quarter of a second, we need to get rid of that." | shots added between others, and a cut that ran on one half-bar clock whatever each shot held | No piece under 1 s outside a run of simple images for a musical reason; length by content; the cut rate by section (tool 58). |
| The whole first film set aside: "i want to go back on the song and make a new one" | a first song, and a story too thin for the film: "i think a lot of it we didnt have a good story" | A new song is a new film. Write the story on the song first (whose memory each section is, what each line shows), then the shots. The tools carry over; the takes don't. |
| "[…] the look is off." | Midjourney's first round, written from the research's words, came back as a photographic fashion editorial | The look comes from references the director picks: three of their frames as style references in every prompt, and a palette measured from them (tool 67). |
| "it feels like.. a little boring compared to bliss", and "some of it feels a little action deprived compared to bliss" | v1's first half, which an art director's second-by-second measure of novelty against BLISS also found the flattest | New things inside the surfaces the film already has, one per existing event, on its beat, where the measure is lowest; the bars and every timed beat kept. |
| "1:20 on is perfect but its very boring up to 1:20 - so i dont think that people will watch til then." | an opening below the tier of the film's best passage, the 3D drop | Bring the best passage's world forward: AERO's first 1:20 went into a 3D world with the desktop as its screen (Storyboard). |
| The all-3D previs: "way too disorienting overal" | a monolith from the sea, shards in the sky, the world stopping with every prompt, a giant prompt, two big screens, a one-frame flash, a punch-through montage | One continuous camera with the screen the hero, about 95 % of the frame; nothing in the world reacting; nothing full-frame for a frame. |
| "Why'd you remove a lot of the 3d?", then "i hate the random camera movements" | the lighter finals cut the 3D away; the A film's push-ins and pull-outs showed nothing new | Structure, not more or less motion: where the film is in 3D, where it is flat, and a reason for every move. |
| "they dont fit the lyrics of the future that was promised really" | wallpaper proposals made softer and airier, not for the line | Make the picture for the line it plays under: "The future used to look like water, sky and green", pictured as that promised future. |
The song
| What you see | Why | The rule now |
|---|---|---|
| The song came out twice as long as planned (2:19 → 5:06) | Suno gives each spoken line its own two-bar slot | Plan two bars per spoken line, and write 10–13 syllables with the stresses on the beat. |
| Verses went choppy after optimising a score | a metric that rewards short clauses on the pulse | Use flow for verses and groove for chants, calibrated to the director's ear. |
| A name mispronounced | Suno's reading | Respell it in the Suno field only; the screen keeps the real spelling. |
| Numbers and acronyms sung wrong | written as digits | Spell them as sung ("A G I") and show "AGI" on screen. |
| The lyric rushed or truncated, silently | the lyrics field ran over about 3,000 characters | Aim for 1,800–2,400 characters for about 2:20. |
| The chosen take can't be fetched | the download is a native browser download, and the CDN wants signed URLs | The person downloads it; that download is also the licensing step. |
| "A voice already exists for this song" | Suno allows one Voice per source song | Make one combined Voice, spoken and sung. |
| A patched export drifted the song by up to 0.7 s | an editor export with BPM lock on | Export with the lock off, diff the spectrograms, and time-map the edit instead of re-cutting. |
| A new take changed the song's shape | takes differ in structure, not only in timing | Re-time the board from word anchors, and restructure by hand where the shape changed. |
| Forced alignment failed on a phonk take: 102 of 164 words under 0.2 confidence, one word stretched over 8.5 s | the take stutters and repeats far beyond its sheet | Take the times from a transcription with word timestamps and the words from the sheet; every stutter is a token. |
| The scorer found no rhyme in a couplet that rhymes ("PSI" / "SI") | "SI" read as one syllable | Spell acronyms as letters for the scorer too ("S I"). |
| The first timing work read the take as about 89 BPM | 89 is two-thirds of the take's real 133.39 | Check a tempo against the genre and the kick spacing before any timing work. |
| "the music model is skipping words or syllablrs to fit it to beat, which is usually a bad scansion sign" | hook lines of 7–10 syllables in slots Suno sings as 1–1.5 bars: "blue" lasted 0.02 s, "baby" 0.06 s | Hook lines of 6–7 syllables in one shape, "one syllable per note" in the tag; measure word lengths on every take (tool 2). |
| The first vocal stems were of the wrong take: "thats teh wrong song" | the locked take was the director's own, and the production's notes had matched it to one of its own takes by length | Split the locked take itself, and check the stem against the master by cross-correlation (zero lag), not by title or length. |
| ESCAPE VELOCITY's sound no longer stood out: "many peopl ehave made forks of escape velocity, so that sound is exhausted" | others had made songs in it | A new film gets a new sound: one test lyric on three different styles, picked by ear. |
| Round after round of takes rejected: "these suck why like indie pop or folk pop, it needs to sound like glados ideally or sound like it comes from portal", then "it feels like im watching a cheap mortgage slide show youtube video" | every style had "pop" in it, and pleasant adjectives: Suno's stock-music default | Name the strange, specific sound the film needs, and exclude the stock words. The director named theirs: "cant u just say Delay Lama as the main instrument?" |
| The treated voice: "it like hjurts my ears" | the treatment ran on the consonants too, and lifted the S's (centred at 9.9 kHz, against the singer's own 8.7) | Treat only the voiced frames; the consonants keep their own envelope, softened above 4.5 kHz. |
| An octave down to stop the sting: "oh now it sounds too low. maybe not octave. like before it was extremely high pitched now its like a guy." | an octave shift changes who is singing | Keep her own pitch; lower the formant and tame the top instead. |
| The treatment's added cracks could land anywhere: "make sure the 'glitches' … land on a reasonable key/register/beat still" | a fallback snapped her notes to the detected scale, which would have pulled her C♯s to C or D | Track her notes chromatically, and put each crack on a safe note of its moment, inside her range, on the 16th grid: 65 of 65 in key and in range (Song). |
| "P-doom" was sung "p'Doom" | a 70 ms schwa on the 16th before "doom", where "P-cake" had a clear "pee" a beat before its word | Fix it at the source: the "pee" of "P-cake" copied to the beat before "doom", at its own pitch, so the treated voice and the voice under it both carry it. |
| The levelled song lifted the quiet passages 8–9 dB over her | evening out her notes had flattened her dynamics, and the master raised and limited the instrumental | Level only the voice, to Suno's own lead (BS.1770 integrated, then a slow gain on 2 s windows); the instrumental stays as delivered ("solely master the voice and not the instrument stems"). |
| ffmpeg's loudnorm went dynamic without a word | +4.8 dB of gain would have peaked at −0.3 dBTP | Limit the peaks first (at 192 kHz), then the two-pass linear loudnorm. |
| "none of these feel great, whats the iconic music from that time? […]" | round 1's sounds were today's lanes for the look, not the era's | Ask what the era itself played, then let the director name the genre. |
| "i want the structre of the song to be more described so it doesnt drift too much" | section tags that said how a section sounds, not how long it is | Every tag gives its section's length in bars and what plays in it. |
Listening
| What you see | Why | The rule now |
|---|---|---|
| Cuts drift off the beat later in the song | a fixed BPM on an accelerating take (131.5 → 133.9) | A variable beat map, never one BPM. |
| One chapter's lyric check failed on a word 2.6 s early | a delay throw aligned as the word | Ear-check gaps over 1 s and very low confidence before the board. |
| Bars start on beat 2 | claps on 2 and 4 won the downbeat vote | Add a chord-change vote, check by events, and keep an override. |
| The loudest moment gets no camera impact | the detector missed a hit that grew out of a loud chorus | Keep a manual add and drop list of hits. |
| Snare and hat lists full of kick clicks | a broadband kick fires in every band | Drop onsets within 45 ms of a kick. |
| Sung lines and shouts missing from the alignment | the aligner is weak on singing; the transcriber missed shouts | Merge the two aligners by confidence. Copy a shout from the earlier chorus plus the bar offset, and mark each word's source. |
| One reading of the line starts was off by up to 0.5 s on 17 lines, and another started a line on its second word | two readings of the vocal disagreed, and each was wrong somewhere | Check each line's start against the vocal stem's onsets before anything is timed to it. |
| "we have to be aware bpm slightly shifts w suno over the whole song" | the take drifts from 95.7 to 99.4 BPM, so a fixed grid puts the later hits off the beat | A 16th grid tracked from the drums, every beat locked to its hit: 91–99% of the strong hits within 20 ms (tool 52). |
| Hits listed for a held vowel that only flutters | a re-trigger finder returns a peak on every slot | Measure the grid contrast (the peaks on the slots over the peaks between them); near 1, take the grid itself as the hits. |
| The transcript heard "I'll wait for you to come back" over chorus 2's octave flips | transcription is weak on a treated voice that flips registers | Snap word starts to the lead's onsets, fix them by hand from the pitch track, and cut on bars or glitch hits, never on word times. |
| One word parked 3.5 s early, among wordless chopped vowels | the aligner put the "It" of "It can stay" into the chops before it | Look at the words on the lead stem's spectrogram wherever the song chops vowels, and check them against the transcript. |
| faster-whisper's word times ran 0.2–1.2 s early | transcription times on a sung stem | Forced alignment on the lead stem for the times; the transcript for the words only. |
Her and the plates
| What you see | Why | The rule now |
|---|---|---|
| Her ethnicity drifts; 12 plates flagged | the prompt didn't pin it | The canon text pins ethnicity, age and skin in every prompt. Test four plates before any batch. |
| Identity edits drift from the look, and refuse seated poses | an image model "replacing only the woman" | Identity is prompt text only. |
| A close-up-sized head on a distant figure | face image references: a whole sheet imports its layout, a single face over-conditions | No face references for identity. |
| "Version 8.2 doesn't support --oref" | that parameter doesn't exist on that version | Don't use it. |
| Full-length prompts come back as close-ups | the long face canon pulls the frame in | Camera first, plus the short far form of the identity. |
| A feature asked for as an adjective goes missing | it wasn't the subject of the sentence | Make the feature the subject ("the hide studded with dozens of large glossy eyes"). |
| The crew are copies of the male lead | one description for a whole cast | Describe each extra (age, build, hair) and add an explicit negative. |
| A sheer gown read as plastic wrap and nude | "sheer … bare shoulders, bare feet" | A structured, high-neck, long-sleeved look, "composed and deadpan". |
| A stranger in an over-the-shoulder shot | the shoulder had no canon | Over-the-shoulder shots carry the canon too. |
| The robotaxi came back as an old sedan | the object's form wasn't named | Name it: "a small white compact electric SUV robotaxi with a tall spinning lidar dome". |
| The same image on about six shots | stand-in aliases left in the board | One image per shot; use the unpicked candidates as a variety pool. |
| "Two heads next to each other" ("bodyslop") | a ghost and a person composed in one prompt | Describe the ghost as made of the scene's light, or compose two assets. Make groups with an edit model. |
| A fix painted by hand in code | fixing the frame instead of the source | Bake it into the prompt or use an image-edit model. Never paint pixels. |
| The edit model invented a six-pointed star | edit models invent details | Re-check the canon after every edit, and name the exact form ("exactly eight points"). |
| Edited plates rendered with their old depth | prep wasn't re-run | Re-run depth and boxes after every plate edit. |
| Images filed under the wrong prompt | filed by their order in the batch, and Midjourney rewrites long prompts | Check each image against its own prompt before filing it. |
| Lost picks | parallel runs racing on one state file | Use a locked read-modify-write. |
| A game avatar that "feels like roblox" | a low-poly 3D model used as the final character | 3D renders are motion references only; the video model draws her from the avatar's images. |
| The stylised avatar came out chibi | a stylised heroine drifts to a big head on a small body (about a quarter of her height) | Write adult proportions ("her head about one seventh of her height") and screen every still for them. |
| An off-model take: a cropped jacket and a bare midriff instead of the one-piece suit | the still had the wrong costume, and the take followed it | Screen stills for the costume as well as the face. Re-still, re-take, then re-fit everything measured on the old take. |
| The real car came back as a generic 1980s wedge | an image model can't draw a specific real car | No generated picture of the real car: the car is always the real footage, and she meets it in video edits of the real clips. |
| Asked to hang upside down, she came back only tilted (four images of four) | Midjourney tilted her instead of inverting her | Ask for her weightless, the hair lifted straight up, and turn the plate 180°: the lifted hair reads as hanging. |
| Patches, badges, numbers and a keyhole cutout on a suit "with no lettering" | "no lettering on her clothes" didn't hold in every image | Screen every suit; in the video prompts, close the collar to the throat and add "no badges". |
| "p24 s24 pick has 3 arms lol"; three of four stills of one turn with backwards legs | picks screened on thumbnails about 230 px tall | Check every pick at 800 px or more for limbs before spending on it. |
| A batch's prompts ran past 600 characters, the length DON'T LET ME SCROLL kept its Midjourney prompts to | the new outfits' descriptions were long | Write to the length; shorten before the batch goes. |
| "[…] i think the top isnt great […]" | the previz performer wore a skin-tight green suit with no build given, and the video model copied the body | A slim performer in a loose, thick costume, her build in words in every prompt, and a new outfit. |
| "hm dont love the shirt. […]" | the outfit went straight into a take, unseen, and the model drew her off-model | Show the outfit's stills before anything is generated with it ("can you show me the images of the outfit before generating this time"), and write her build in words. |
| "you should give a full face sheet like this next time. otherwise it makes her neck all hitched lol" | one large crop of her face as the only face reference | Her whole face sheet (front, three-quarter, profiles, back, expressions) for every video take. |
| "wait align w me on teh references you use lol - its clearly not going to work if you use reference 6" | a place plate with her in it in an old outfit, and old face crops, picked as references | Agree every reference with the director before a run, on one board; places with nobody in them. |
| The dress the director picked had two star clips, and the streak on the wrong side | Midjourney's image | Mirror it and take out the second clip before it becomes the reference. |
| Midjourney stood her head on a neck, shoulders or a pedestal, and mirrored her hair | it draws a head as a portrait, and doesn't hold which side a streak is on | Two sentences in the identity fix: she hangs from her boom, and which side the streak and the clip are on (tool 59). |
| The identity fix put her streak on her left, the clip's side | the sheet's front view swept the streak there, and the edit followed the sheet over the words | A sheet whose views agree with the canon on both sides, and the sides in words. |
| "i thin she loses her identity in the reimagine ones, but they do look better overall" | a Midjourney reimagine redraws the face: warmer, less porcelain, the streak low | Keep the reimagine for the look, and put her back with an image-model edit to her sheet. |
| A portal gun in about a third of the images from "screenshot" prompts | "Portal 2 … screenshot" brings in the game's first-person gun | --no … portal gun, gun, weapon, hands for places. |
| Midjourney's Aperture came out too detailed and too dramatic beside frames of Portal 2 | more cables and clutter, and stronger light (god rays, bloom) than the game's baked light | Frames of the game as style references, and one grade over everything (tool 57). |
| "It doesn't really look like her." (the memory film's head, on draft 8) | every modelled head (a scan, a parametric bob, a bob of hair curves) read as a mannequin | Her own face: a photoreal plate of her, matted and seated on the modelled stand (tool 60). |
| Her eyes blazed in the dark | "eyes ignite" in the prompt, on a dark set | "Her warm amber glass eyes keep only a soft inner glow; they never blaze." |
| Her face drifted off her sheet in every Midjourney frame of her | style references from the reference videos bring their own kind of face | Midjourney makes the world; an image-model edit puts her in from her sheet (Midjourney). |
| Midjourney's 2008 came back glossy and new | it draws the era as today | The era's older look from an image model, with frames of the reference videos as its references. |
| A faint, made-up stock-photo caption in a corner of four picks, kept by their loops | Midjourney, whatever "no text" says | Check every pick's edges at full size, and frame the corner out. |
| A drop of water on a fingertip came back as a crystal ball held between two fingers | the object wasn't described exactly | Name it: "the pad of a woman's index fingertip with one small round water droplet resting on it, the droplet the size of a lentil". |
| Three loops played under the wrong names | files filed by their names | Check files by their content: compare them byte for byte. |
| Her far figure came back as a 3D cartoon doll in an all-white suit | the take was asked to bring her into an empty plate | Put her into the first frame from her sheet, however small, and let the take move her. |
Clips and lip sync
| What you see | Why | The rule now |
|---|---|---|
| Lifeless takes, about 830 credits burned | agent-written prompts: poses, not drama, and nobody read them | One writer writes every prompt in one context, with the story beat, blocking, and timestamped action and reaction. The director reads the book before any spend. |
| Sung takes re-sing the line instead of copying it | long timestamped screenplays on sung windows | Use the short sung form for sung windows, and screenplays for motion. |
| One window barely syncs whatever the prompt | a microphone at her mouth on the plate | Sung plates show the whole mouth, with nothing in front of it. |
| QA kept weak takes | takes were checked against their own weak prompts | Check takes against the story and the board. |
| Two clips start on the same frame ("jarring") | the same plate as the start image | Use a sibling candidate, or the previous clip's last frame. |
| Lip-sync models "still not exact" | the failure was the input, not the model | Measure, cut, cover; otherwise cut away. No lip-sync models. |
| A take diverges inside a word | the prompt quoted fewer words than the window held | Quote exactly the window's words, and start windows in word gaps. |
| Lips a fraction early or late in the edit | each take has its own lag, up to ±1 s | Map clip time and song time through each take's measured lag. |
| A window cut a word ("…could. Your P") | the window ended mid-word | Start and end windows in word gaps. |
| Motion clips "diverge" in the sync check | the mix isn't copied (NCC about 0.08) | Expected: play motion clips at lag 0. |
| Grey proxy shapes in a take | a 3D previz video reference leaked into the output | "take only the camera move from it", or drop the reference. |
| Drift on long sung clips | lip sync degrades over length | Sung windows of 4–8 s, never longer. |
| Head counts change, actions reverse, garbled text | under-specified prompts | "exactly four …", name the end state, one dominant camera move, "No text, letters or logos". |
| "Upscaled" footage looks waxy and shimmers | learned upscalers | Keep Lanczos, and generate hero shots at 1080p instead. |
| 32 of 59 clips came back near grey | references pre-graded to monochrome | Send references in colour; any look goes on in post. |
| A sung clip ignores its audio | a first frame sent with the audio reference | On OpenRouter, use reference mode for sung clips and covers, never frame_images. |
| Guards came back in white; a guard showed his face | they were barely in the first frame, and the model invents what it can't see | Keep them out of frame and spell it out: "Everything the guards wear is black; the only white thing is the VR headset." |
| A colour name printed across her chest (INTERNATIONAL) | "international orange" in the prompt | "vivid safety-orange satin, plain, no lettering" |
| The team walked down the boarding stairs instead of up, and read as leaving | in the still they faced the camera | Pick a still whose bodies already face the way they must move. |
| Replacement takes kept the blocky stand-in figure | the motion reference's figure read as the subject | Call it a placeholder and list what not to copy; add a still of the avatar in that shot's world. |
| A small white cube for a few frames where the clay render had a spinning top | the motion reference still carried a prop the story had retired | Name each retired prop in the prompt ("There is NO spinning top … her hands are empty"), and check the frames where it was. |
| A take cut to a new angle mid-action | the model's own editing | Ask for "One continuous take … No cuts, no scene change, no second camera angle". If it still cuts, cut there in the edit and drop the morph frames. |
| The real car turned into a generic sedan, a Porsche-like car on a race track, a dark grey car: six of the first twelve moves on real frames lost the car or the set within 1.3–2.5 s | Wan keeps the real car only on the sides its first frame shows | Keep Wan's moves on the visible side. Orbits that reveal a new side go to Seedance, with real frames of that side as references. |
| Takes cut to a grey studio wall, a white spaceship interior, a blue sci-fi screen, a road with lamp posts, mostly in their second half | Wan's own editing | Review every take on a sheet with a cut finder, log its usable window, and draw only inside it. |
| Seedance cut to its reference images as if they were shots | reference frames read as shots; saying they weren't still left 6 of 11 takes cutting | One role per reference and "never shown as shots"; script the move to land by 3 s; crop references tight on black; end every window before the cut. |
| Parted lips and teeth in a film where she never sings | plates with parted lips, and the word "teeth" in a prompt | Closed-lip first frames, never the word "teeth", "Her mouth stays shut from the first frame to the last", and a check of every face shot's frames. |
| A man in the window of a car nobody was in | nothing in the prompt said the car was empty | "The car is empty and flown by remote: nobody is inside it and its glass stays dark." |
| Cold-gas thrusters came back as fire | "white thruster plumes" wasn't enough | "Its thrusters blow white cold-gas vapour, never flame or fire." |
| A chrome object flew across her face | the prompt named a light sweeping across the glass | "a light only … the light stays outside the glass", and "Nothing enters the cockpit". |
| Video edits cut to her face on its grey studio wall | a face close-up given as a second reference | One cleaned full-length plate: "Image 1 is only a reference for her look; it is never shown as a shot." |
| A re-shoot rolled the car upright, the very glitch it was made to fix | the state written in the prompt held in one take, not both | Two takes of every re-shoot; each of the four jobs had one that held. |
| Lifted blacks in generated takes (about 14 on 0–255, against the footage's 1) | Wan's output | Measure each take's black level on its sheet and restore it at extraction. |
| Slow motion stepped at 10–12 pictures a second | a "60 fps" feed that carries about 24 distinct pictures a second | Count a source's distinct pictures before planning slow motion; blend neighbours, and motion-compensate where the car and the camera both move. |
| Wan's dance held the first pose, reset and shuffled | Wan doesn't hear the song | Dances that must land on the beat go to Seedance, with the shot's instrumental as @Audio1 "for rhythm and timing only". |
| "never slow these down. you lowered the framerate for no reason, just looks bad" | beat warps ran the takes at 0.70–0.89× in places, one chapter's own map at 0.53× | Warps floored at 1× (tool 42). A take too short for its shot loops on a matching pose, plays as a sampler, or is taken again. |
| Hands and feet vanished at "blurred bounding boxes" | limbs left the 9:16 take's frame and were faded at its edge | Shoot her wider than the shot needs; complete what left the frame in a Wan pass (tool 40). |
| A floating glass panel where an invisible screen should be; focus brackets round her fingertip; a yo-yo landing on her toes; a stool seat under her | Wan fills a gesture with things it imagines | Say what isn't there: "nothing is visible in the air: no screen, no panel, no glass, no hologram, no light, no interface, her hands move through empty space". Check every take's frames. |
| The camera moved although the prompt locked it off: she shrank about 20 % in one take | Wan's own camera | Place her by her feet frame by frame, or take it again. |
| An outfit swap went in with a frozen half-second | it was aligned on her silhouette, which the new skirt changed | Map the edit back by the ratio of the lengths, and check the fit on her hair (tool 37). |
| Re-lights softened the interface's small type, and one smeared a notification card | a video edit re-renders every pixel | Keep the original pixels in rectangles, tracked per frame when the card moves (tool 38). |
| Asked to move two posts inward, Seedance kept them where they were | Seedance re-textures and re-lights; it doesn't recompose | Recompose in code first, and re-light last. |
| A repaired face drifted in 1:11 and read "off in the 0:36" | Wan redraws her face, and in one take her chin was tucked into a sweater's collar | A face reference cropped to her face and hair, "only a reference for her face"; for the full face, write it slim and lift her chin out of the collar. |
| "seedance didnt rly change anything" on a pass meant to fix a previz take's melted body | the strict editing template made the take the "sole editing master", frame for frame | For fixing a previz, a loose prompt: "just say maintain pacing and lip sync, fix any issues, vague body shapes, etc". The strict template is for re-lights. |
| A whole-film reshoot in Wan 3.0 Prime over the previz: ":/ looks like shit. i feel like h3 is dragging it down." | every shot redrawn over a full-resolution previz whose faults it kept | Test a master on one shot, several ways, side by side; give the previz as a rough guide at 320 × 180, only the lip sync exact. |
| The previz's lip sync failed in places: "0:27 for example - shes talking when theres no words yet" | each take's prompt listed whole lines where its audio held part of one | The exact words of each take's window, cut lines marked "…", every silence described; a word sung across a cut belongs to both takes (tool 45). |
| A toothy smile in the silence before she sang | "smile" in the take's mood | No smile in a sung take's mood: joy in her eyes, lips closed until the voice begins. |
| "ok it still cut so we'll need to just do h3 til we get them without cuts" | told to merge a previz take's cuts into one camera move, Wan kept the cuts | Fix cuts in the previz: keep only cut-free takes. |
| The previz put her in the dancer's background for a few seconds | the dance reference was the whole video | Matte the dancer onto flat grey. |
| Four dance shots lost hands and legs: "it must be that the roto or whtaever on dance refs lose bodyparts and the video follows it exactly" | the previz guides had lost them, and the master copied what its guide showed | No guide for those shots: the place as an image, the dance in words, beat by beat, with the tempo (tool 47). |
| A red cord across a tram shot whose place had none | the prompt still asked to remove it | Name a removal only where the thing is in the reference. |
| Kling 4.0 froze her mouth into a smile through every word | it takes no audio track | Lip sync only from a model that hears the vocal. |
| Wan 3.0 Prime singing to the song hard-cut at 9.9 s instead of craning up, masked or not | Wan's own editing | Seedance 2.5 with the vocal stem made the same crane as one move (tool 46). |
| A shader guide at 320 × 180 came back soft and blocky: "the MTWTFSS and the next 'pyramid' shared still is all pixellated" | the guide's detail was too low | A supersampled 1080p render as the guide, with one still per object (tool 50). |
| At full resolution the paper shot drifted half a second and swapped objects: the Enigma rotor became a helix, the weekday cells lost their letters | a sharp guide with no still per object | One still per object, made from the crisp frames, each named in the prompt with its time. |
| Big-motion singing takes re-sang the vocal instead of copying it | events in the prompt that make a sound: clunks, cannons, gulping, a voice box glitching | Write every action as silent: "Every action in this video is silent: the only sound is @Audio1." (tool 62) |
| A "voice-box glitch" written in words drew a broken face: rolled-up eyes, a stretched black mouth | the model drew the glitch on her | Picture-only glitches, her face always intact; the song's glitches go on her head afterwards (tool 53). |
| Her head came back on the motion guide's white shell instead of her grown boom | a video of the character's own body carries the body over | Turn the guide into a coarse blockout (greyscale, flattened, heavily blurred), name it as one, and give her body in words. |
| "0:54 - lip sync bad, need to reshoot." | the vocal window began inside a word, the held "s" of the line before; another line's window began on "(pass)ed" and was re-sung in three takes | Start every window on a clean onset, in a word gap (tool 14). |
| Memory images took over the room late in a take, or became shots of their own | the model turned a reference into the scene | Each memory "only as picture content inside the screens' glass, never as the room"; keep the seconds the shots use, or put the screens' content in words. |
| "1:01 scene - she's not lip synced really, are we feeding in vocal stems?" | a take of her farther back, loose on the line before the stutter | Nail the line before the glitch, every word's onset from the lead stem written into the prompt, and let the mouth glitch cover the held stutter. Make a few takes and let the director pick by eye: "can you show me so i can look visually at the lip syn cand choose", then "3". |
| A take began mouthing at "cake", a second late | the take came back that way | Check the first words of every take by eye before picking it. |
| The chatbot's answer sat off the bottom of the kiosk's screen: "the france chat message is just off the bottom of the computer screen" | the take placed it there | A retake with both bubbles inside the screen; the HUD carries only her intercept of the question. |
| Chell jumping into a portal "looked v off bc we used a video model" | a video model's physics | Record the physics in the game itself: six shots of the final were recorded in Portal 2. |
| "glados in your renders and chell etc basically had no movement. it was just her static." | no motion reference, and little motion in words | The boom's motion from a recording of GLaDOS's moves as a rough guide, or written into every second of the timeline. |
| On draft 8, at 1:06: "She needs to be farther away and […] glitching still." | a take that lunged at the lens with her mouth open on every hit | Reshoot her farther back, and build the glitch on her head hit by hit (tool 54). |
| "to continue" came 0.36 s early after "permission" | Seedance shortens the pauses inside a line | Measure each phrase and place it on its own; ease between offsets in the breath gaps (tool 69). |
| A take out of sync on its first words; another dropped whole words | one window left only 0.26 s before the first word; another opened inside the held note of the line before | Open every window in silence, half a second to a second before the first word. |
| A take lost the copy of its vocal | 1.6 s of silence before her first word | A lead-in of half a second to a second, no longer. |
| A garbled glass dialog in front of her: "Windows nects our permision" | the prompt had her "lit by a glowing permission dialog" | Never ask a video model for interface or text: the coded interface draws it beside her. |
| A dance take jumped back to its first pose at 7.6 s and held it | the model, unasked | Scan every take for hidden cuts and held frames (tool 70). |
| A take turned her back through a sung line, and came in closer than its first frame | a turn asked for across the words | Turns go between lines; check the framing against the first frame. |
| "her head is alittle cutoff by your green border", then "this shouldnt be so hard something is off" | the first frame, a still set at 80 % on its own green, had faded her crown into the green, and every take made from it carried that | Fix the first frame, not the key: one flat green from edge to edge, her whole crown inside it (tool 71). |
| Her face drifted off her sheet when she turned to wave | the take was made from a back view, with no picture of her face | Her sheet as a reference whenever her face may show, even small, even from behind (Seedance). |
| A climax close-up looked soft | a 720p take shown at 1.5× | 1080p wherever her face is shown large. |
| A first-person take looked down into the drop on a fingertip, which filled with the magnified fingertip instead of the world | the camera rose over the drop | Keep the lens level with the drop, in words. |
Filters and providers
| What you see | Why | The rule now |
|---|---|---|
| Close-up references declined | the provider's face filter | Free, and final for that image on that service. Send the same unaltered image elsewhere, or keep the 2.5D plate. |
| A retry ladder (stronger grade → posterised grade) got takes through, baked banding into them, and was blocked by the harness | altering a reference to pass a safety filter | Never alter an image to pass a filter. A blocked action is a stop, not a puzzle. |
| Jobs fail with no reason, credits back seconds later | a silent input filter misreading innocent wording ("a plug pushed deep into each ear" for foam earplugs) | Reword plainly and keep the beat: plain rewording fixed five of six at once. |
| "output audio may be related to copyright restrictions" | the provider's audio filter | Retry once with a re-cut window, then try the other provider. |
| A filter that passed faces two days ago now declines them | providers change | Keep a second provider configured. |
| The agent's context floods during uploads | presigned-upload replies of about 3.5k characters per file | Upload by URL. |
| A sung opening blocked four times in three stagings, the last from a clearly adult remake | unclear: every blocked attempt carried the same vocal, while other takes of her cuffed beside guards passed | Stop and ask the director. Re-stage it as a genuinely different shot, or drop it. Never route around a block: no silent take with the vocal lip-synced on afterwards. |
| A plane beside a star was blocked | probably read as a plane flying into the sun | Compose it calmly, with the star well clear of the plane. |
| Seedance's output filter blocked a dance in white satin twice, from two different first frames | unclear; the same dance passed on Wan, and a later drop dance in a red coat passed on Seedance | Make it on the other model. Both blocks were refunded. |
| A leaning pose, pointing at the lens, refused by the provider's content filter | probably the leaning staging | Restage it upright, pointing up at the post above her. |
| Three sung shots refused by the provider's content filter, then a reworded retake and a restaged one too | not stated by the provider | Refused, no take; stop and ask the director, re-stage as a genuinely different shot or drop it. |
| A previz close-up of the performer bringing a pill to her lips refused by the provider's content filter as an input, reworded or not | the guide clip | Refused, no take; re-stage it as a different shot or drop it. |
| WHITEPILL: her face sheet refused by the provider's content filter on Replicate, even alone with a harmless prompt | not stated by the provider | WHITEPILL ran only shots with no face image there. |
| A grey motion-capture body given as a dance reference was refused by the provider's content filter | a nude grey body | No undressed figures as references; describe the dance in words. |
Spend
| What you see | Why | The rule now |
|---|---|---|
| Every submit returns 403 while the account has credit | the API key has its own spend limit | Set the key's limit above the project cap. |
| "Remaining budget" figures are wrong | the local ledger isn't the bill, and it counted free declines | Quote spend only from the provider. |
| Hundreds of credits spent in minutes on unread prompts | a credit-reset deadline drove the spending | Never let a deadline drive spend. |
| A background workflow could still spend after a quality flag | not every spender was stopped | Stop every workflow that can spend: search each for its generate calls. |
| Credits vanished at renewal | subscription credits don't roll over, and top-ups expire | Plan spend inside the period. |
| $148.10 of the $357.51 spent after refunds went to takes the final doesn't show; on four re-light samples: "kinda a waste on the excess ones" | shots re-lit before their outfits and compositions changed, and eight swaps into a look that was then dropped | Fixes, then reshoots, then re-lights. Re-light a shot only once its composition is final. |
| The runner's ledger read $10.40 low | it priced Wan's passes by their generated seconds and left out the input video | Price a video input per second too. |
| "in the future let me give you explicit approval before you do extra gens." | a follow-up generation went out without asking | Ask before any generation the director hasn't approved, cheap or not. |
| A whole-film Wan reshoot, $132.42 at list, dropped as a whole | the method was judged on the whole film, not first on one shot | Try a new method on one shot, several ways, side by side, before the film. |
| Takes sent out in pairs, for a choice | a second take made for every job, used or not | One take per job, judged before the next; a re-roll only when it fails, from better inputs. |
Colour and look
| What you see | Why | The rule now |
|---|---|---|
| v1 "way too gray … loses the Midjourney magic" | a mono print pass, and chapters desaturating the footage | Colour halftone or native colour; never desaturate the footage. |
| "color grading looked insane"; blue graphics "clash" | a graded look, and a blue accent over blue footage | Native colour; pick the accent against the footage's hue; draw with semantic colour tokens. |
| Flicker in a graded clip | per-frame grading | One LUT per clip, computed from 16 sampled frames. |
| The master looks washed out ("v blown out") | an untagged or BT.601 stream | Convert to BT.709 and tag it; verify with ffprobe. |
| Re-lit shots came back darker and cooler (warm grey paper from a mean level of about 172 to about 111) or brighter (a dark scene from about 34 to about 53) | Wan shifts colour, and never by the same amount twice | One global per-channel match per shot before the splice (tool 39). |
| The cloud field came back sunset gold: "wayy too saturated compoared to teh pastel light colors of the rest" | the guide was a sunset render and its still was made in the film's saturated look | A day variant of the shader and a pastel still made without the look reference (tool 50). |
| Shader scenes remastered from the render alone still looked like computer renders | nothing showed the model the materials | Stills of the key moments repainted in the film's look, given with the render. |
| "I feel like we don't get a super aperture vibe" | the shots recorded in Portal 2 dim and foggy (whites at Y′ 50–62, blacks at 9%); the generated chambers' walls grey and their casts scattered | Measure every shot, normalise it, and lay one look over all of it as a tone curve and targeted chroma moves, baked per shot (tool 57). |
| A cyan-white portal core turned pink | white balance tinted a clipped channel, which holds no colour | Send near-whites that were already clipped to neutral before the look. |
| A +1 stop gain clipped before the shoulder could roll it off | 8-bit level filters | Bake the gain and the look into one float LUT per shot, applied in 16-bit. |
| Each continuation of the far shot of her lost about three points of the palette's score | each link of a chain of takes, made from the last frame of the one before, darkened the picture | One take from the still itself; score every take against the palette (tool 67). |
| A falling drop of water turned pink, off the palette | the take | The cut leaves before it. |
Motion design and the renderer
| What you see | Why | The rule now |
|---|---|---|
| A crop cut her head off after a re-take | code tuned to the old take | Re-frame every shot whose take changed. |
| The previous frame's overlay "sticks" in dense frames | a GPU-backed 2D canvas under software GL | Software-backed canvases, and the history check in QA. It took about two hours of bisecting to find. |
| Frames differ depending on what rendered before | a WebGL canvas drawn into a 2D canvas switches it to GPU rasterisation | Read 2.5D pixels back through the CPU. |
| 0.5–1.1 s a frame on 2.5D shots | the 64-step parallax shader | Depth slices or multiplanes. |
| Tags never finish typing on short shots | the default typing speed | Type at 16–40 characters a second, and finish 6 frames before the cut. |
| A lyric word half hidden on its first frame ("You dor't") | occlusion on the entering row | Tuck an edge only, and switch occlusion off for the entering row. |
| Five accent-coloured elements in one frame | the accent used for every highlight | The accent goes on at most two elements. |
| A snap reads early | keyed 70 ms before its kick | Key moves on hit times from the hits file. |
| Two on-screen numbers disagree ("x380" against "135 RUNNING") | two devices driven separately | Drive both from one value. |
| Shake in a drumless intro | a move that answers no sound | Moves answer audible sounds. Stillness where the song breathes. |
| The same helpers written 8–10 times, slightly differently | chapters couldn't share code | One shared device library. Chapters write only what is unique. |
| The default renderer drew only lyrics | the board's graphics were stored as prose | Structured fields in the board: type, devices, treatment, transition. |
| A lyric time patched in chapter code | fixing the time instead of the alignment | Fix the timed words and re-export. |
| A chapter replaced the default renderer and lost lyrics | the chapter must draw every token itself | Run the lyric gate per chapter, and mark custom-drawn tokens. |
| Fonts that can't be shipped | AGPL, GPL, EULA or unlicensed fonts | Ship OFL fonts only, with their licence texts. |
| A depth model that forbids commercial use | Depth Anything V2 Large is CC-BY-NC | Use Depth Anything V2 Small, which is Apache-2.0. |
| A singing mouth held where the take isn't synced | the edit fell back to a plate | Crops, inserts or depth moves on those words. |
| A famous card "too different/ broken up so we lose the reference" | a pastiche: small, tilted, split across two cards, shaking, colour-fringed | Rebuild the real one from measured frames, whole and full frame. |
| A touch landed on the interface's side rail after the interface was rebuilt | a coordinate typed from the old layout | Pin touches, lyrics and tags to the interface's layout table, and take hand-off boxes from the code that draws them. Never retype numbers. |
| The level tag covered the interface's title | one corner for the whole film | Place the tag per scene, move it only on a cut, and match it across chapter seams. |
| A real wordmark on a costume came back blank or garbled | generators can't spell a logo | Composite the real mark in code, tracked to the costume and lit by the frame. |
| A dive through visor after visor flickered: four flashes in one second | single-frame bright pops as lit rims rushed past the lens | Ramp each pass over three frames or more; flag any frame brighter or darker than both neighbours by more than 0.03. Check per chapter: this one was found after the encode. |
| "at like 4 seconds the ramp trace decouples from the ramp" | a line drawn once over footage whose camera zooms | Read the real edge from the frame as drawn, every frame. |
| "the end of the scrolling up ramp clip starts to show curve down, so it should be cut earlier" | the window ran past what the shot should show | A window ends where the picture stops being right for the shot, not only where the model breaks. |
| "the temporary half-shown cut of claudia" | a move from a real frame to her with no last frame to aim for, landing in a dim dissolve | A first-and-last-frame move that ends on her. |
| Impact effects buried the car | smears decaying over 0.12–0.28 s | The impact frame stays sharp; the smear peaks on the second frame and is gone by the fourth. |
| "the app notification shade is too small for the text … has no proper margins"; "rounded corners not mathematically precise" | an interface drawn by eye | Measure the real one: iOS 26's insets and gaps, continuous corners, platters that grow to fit their text. |
| "the upper line overlaps infront of the top line on the E" | a letter built from separate bars | Draw it as one extruded outline. |
| "the time limit is behind some scenes and infront of others" | layering by draw order | Layer each element by its own plane in depth. |
| "the entire top and bottom parts of the frame go black, interpreted as massive jitter" | the walls of reels paged a full screen on every vocal chop and smeared into black bands | The room answers the beat lightly: the kicks and her landings nudge it by 15 % of what they did. |
| Black vertical lines that "appear occasionally": dark columns on every 8th frame of one shot | one of eight render workers drew its share from a stale camera state | Scan every final for single-frame outliers (tool 43). |
| A tunnel strobed and the flash check passed it: 29 of 144 cells alternated light and dark for nine frames | the near cards swapped bright and dark every frame | Scan every full render for strobes cell by cell; fade near cards and smear every card. |
| A one-frame blink at a chapter's edge | the boundary frame was rendered by the neighbour's old code | Re-render a changed chapter with a frame of padding on each side, and check every cut on a seam sheet. |
| Later chapters drew their edges differently | one 2D canvas made without the software flag moved the frame onto the GPU, and a worker carries it across chapters | Make every 2D canvas software-backed. |
| Lyrics built into the scene as objects sat "haphazardly in space": "like im the white pill is a weird curve" | an image model placed the words in 3D by eye | Draw the lyrics after, small and classical, one line at a time (Motion). |
| A 2D animation given to Wan as its video: "it followed the pills animation too closely - like, it moved the pills around perfectly with the animation, so despite relighting them they still looked a little amateuirsh" | a video model keeps a video's layout and motion | Give a video model as video only what must move exactly; the rest as stills or in words. |
| A shader shot lost its last frames | its song was muxed in with -shortest |
Count every render's frames against its shot. |
| Full-frame glitches: "i dont rly like the full frame glitches much at all" | the glitch pass tore the whole picture on every hit | No full-frame glitch: her head glitches inside a matte, on the song's own hits, short unless asked for longer (tool 53). |
| Text placed on the monitors "just faceplant - its not on th emonitor at all" | text tracked onto a moving screen by a naive pass | Drop the tracking: elements in their own space, and world tags only where a track holds on every frame. |
| "all the drawn on panels need to be tilted hte other way in 3d - the small side is on the outside and long end is inside -r everse so it feels like a hud." | each panel turned on its own hinge | One visor round the eye: anything near a side has its long edge outside by construction (tool 55). |
| "the pop-up panels are on a different surface than the memory one" | panels and projections drawn as separate cards, each with its own turn and its own look | One visor and one projector: one bloom, one raster, one chromatic offset, and no cards. |
| The arrest film's net "is the same color with no outlines around it in blue, so there's no contrast with the platform that it's put on" | the subject in its floor's grey, with no outline | The subject in a strong colour with a dark outline, its values apart from the floor, checked at the HUD's size (tool 61). |
| A white-only hologram pass flattened the orange net again | the projection turned every colour into the visor's white | The projection keeps the film's colour key: strong colour stays itself. |
| An insert's RAM bites were dark specks at 380 px | small subjects, drawn for the film's full size | Big, bright subjects in full view, checked at 380–480 px. |
| "the line across the center of teh screen at 0:01 second - remove that entirely" | a boot scan line drawn across her sight | Boot rows only, and nothing across her sight. |
| "the 0:08-0:13 animation has the memory words too subtle" | a small title block in a corner | The title the full width of the left column, behind her stand. |
| The memory film's first frames: "stuff is overlapping, assets are not well layered" | an SVG layout with no check | A real isometric render, and a layout check on every frame: a frame that fails isn't written (tool 60). |
| The head glitch's matte took a column of monitors, or the wall of screens under her | SAM2 on a small or far head | Look at the mattes' QC sheet every time, and cut the matte to a head zone from the face box (tool 54). |
| "The sun is off the widget for example - just broken" | the gadgets not at the system's real sizes, and the Weather's art not clipped to its panel | Rebuild an interface at its real sizes: five gadgets fit, and each plays a part (tool 65). |
| A window's title ballooned as it maximised | the window stretched as a picture | Draw the window's own layout at every step between its two rectangles. |
| The chapters read an empty song map | the film page's own top-level let SONG shadowed the global of the same name for every bare reference |
One object under both names. |
| A small picture differed with the render order | Chromium decoded a JPEG drawn small at a reduced scale only when no full decode was cached | Every picture through a 1:1 software copy; check purity in three orders (tool 20). |
| A bitmap depended on which frame drew it first | a cache keyed by a scale under an eased camera | Key caches by their content. |
| "theres a black flash on the screen right after 45 for 0 reason" | the system's real two-frame blink as it switches to the permission prompt | Leave out a real behaviour that reads as a glitch: the dim comes straight off the desktop's own picture. |
| "the wii cursor is totally off lol" | a 3D glove pointer in the 3D world | The engine's flat drawing of a white cartoon glove, swaying with her aim and dipping when pressed. |
| Her step-out take hidden 1.5 cm behind the picture; a glass fish's path across her face; a glass cursor across it on 24 frames | objects placed in 3D without her face in view | Project every object against her face, frame by frame, before the final render (tool 68). |
| A ghost band of the boardwalk over the curved screen's desktop | the concave glass slab focused what was behind the camera | Camera rays over the picture pass straight through the glass, with its tint and a sheen of the sky on top. |
Review
| What you see | Why | The rule now |
|---|---|---|
| Runs "completed" with no review at all | a usage limit made reviewers return nothing, and the script read that as "no fixes" | A null review is an explicit failure, in code. Carry open fixes forward. |
| Reviewers scored 6–7.5 a cut the director called "perfect" | a stricter bar than the director's | Ship on "no blocking fix left". Calibrate on the director's verdicts. At most two rounds. |
| A reviewer re-ran checks until its time ran out and wrote nothing | it wasn't told what was authoritative | Bound reviewers by output: "write the short version first". |
| The scan flagged an intended prop | a generic "modern object" rule | Whitelist intended anachronisms by name. |
| A strobe counted twice | the flash check paired every transition | Count opposing pairs. |
| Twelve blocks found in 96 "final" takes | generated people; filters let outputs through | A safety and canon scan of every take before release. |
| First-draft chapters scored 5–6.5: faces printing blank, type over faces, repeated devices | animators with nobody reviewing real renders | A reviewer renders, looks, and writes concrete fixes. |
| Chapters reported done still missed notes: two of four failed their check in one round | animators checking their own work | An independent checker renders every note's moment and reports each note done or not, with evidence; then one refix. |
| The takes' verdicts missed a man in a car's window and a repair that turned into a hatchback | one look per take | An adversarial scout re-checks every take frame by frame before more is spent. |
| A fixer swapped an off-model close-up on another set into a held shot | a chapter fix after the chapter's own reviews | A whole-film critic after the chapter rounds, re-rendering the director's notes and every seam. |
| The lead took the black lines for the gaps between reel columns: "no ur wrong … they appear occasionally, look at more framers" | one frame looked at | Look at many frames around a note, then scan for it. |
| "can you show me exactly what i need to pick? sorry its far back in convo history" | the picks were spread across a long conversation | Put every pick the director owes in one message, numbered, with the images. |
| A re-light judged darker and softer on its own read better in the film: "New better." | it was judged alone, not where it plays | Judge a re-light in context, side by side with the original. |
| The spectrogram comparison called a take re-sung that was in sync by eye | the vocal-stem method re-voices the soundtrack, in the vocal's place | Judge that method by eye with the song laid over (tool 15). |
| "show me the references you gave the model too" | the references weren't shown with the take | One board of every take's references, sent before anything runs. |
| The sync check called a take diverged on a held, glitched vowel | it stops trusting a take there | Judge it by eye with the song laid over (tool 63). |
| "show me the green screen roto before you render plz" | cut-outs went into renders unseen | Each key goes out first as a review clip, the green source beside the cut-out, with the song laid over. |
Render and running agents
| What you see | Why | The rule now |
|---|---|---|
| Nobody knew the encode had finished | it ran as a detached job | Tracked background jobs with a status. |
| Swap and the root disk filled up | six agents rendering at once, with frames on the small system disk | One rendering workflow at a time, scratch on the big disk, and check free memory and disk first. |
| Disk full after a render | about 9.6 GB of frames per cut | Delete the frames once ffprobe has verified the outputs. |
| Commands ran against the wrong project | an export inside a backgrounded shell chain | Name the project on every command. |
| A merge restarted three times (about 1.5 h) | an interrupt kills every running workflow | Short phases, run ids saved, resume by run id. |
| One serial chapter workflow would have taken about 12 h | serial agents | Three parallel workflows (about 4 h). |
| A ~20-hour background queue, new takes stuck behind superseded ones | post-processing auto-queued on every import | Queue only takes the edit uses, in priority order. Cancel superseded jobs. |
| A shared machine at 100% CPU, every job 3–5× slower | two dozen waiters polling every 3 s | One shared listing every 45 s for all waiters. |
| Duplicate jobs after a restart | killing a waiter left its child behind, and the re-run resubmitted | Record job ids beside their inputs, adopt queued jobs, and kill orphans by id. |
| Every new agent session fails at start | an agent CLI auto-updated mid-run | Pin versions for long jobs. Check the job's error before assuming there is no work. |
| A worker probed for 75 minutes and delivered nothing | no bound on the first deliverable | A first complete draft within about 10 commands, with a mandatory handoff. |
| Shared-file bugs fixed differently in parallel chapters | workers patching shared code | Workers report shared bugs; the operator fixes them once. |
| A resumed multi-chapter workflow reviewed and fixed chapters that had already finished | the resume replayed its stages unevenly | One workflow per chapter, with the notes in files the agents re-read. |
| Three chapter runs interrupted three times mid-build | an interrupt ends every running agent | Resume each from where it stopped: only the agents that were cut off run again (57 of 147 launches), and finished work is kept. |
| Rotos killed for lack of memory; one came back with 35 of 210 mattes and looked like success | the matting library's CPU memory arena held about 12.5 GB per 1080p take on a box shared with renders, and a | tail hid the exit status |
Arena off (1.3 GB); count the mattes against the frames and fail loudly (tool 41). |
| Six chapter launches interrupted mid-build | an interrupt ends a running agent | Each animator keeps a notes file; the relaunch reads it and picks up where the last stopped. |
| One seed with the same inputs gave three different previz takes | the previz model isn't reproducible run to run | Keep the take file; a seed doesn't pin a take. |
| A previz take with a jump inside it passed the automatic cut check | the check looked for cuts | Check every pick for jumps as well, with the cut measure of the assembly (tool 44). |
| The cut ran about 0.9 s behind the song by its end | parts from stills or padded with tpad started a frame late, and the concat summed the gaps |
Stamp every part's frame n at n/24 (tool 64). |
| From 1:48.5 on, every tool that counted decoded frames was one frame late | a default decode duplicated a frame once the concat's 0.7 ms a part had added up | Decode with -vsync passthrough wherever frames are counted, and seek a still by its own timestamp. |
| The last 2 s of a stream went missing | the song muxed in the same pass as the encode | Encode the picture alone, then copy the song onto it. |
| A 1,325-frame video from a 1,949-frame sequence | .png names linked to JPEG data, and ffmpeg's image2 demuxer dropped every one of them |
Convert to the named format, and count the decoded frames against the sequence (tool 25). |
| A tool read the frames before the song wrongly | a picture that starts before the song has negative frame numbers | Parse a leading minus in every frame range, and pass it as --frames=-64-1884, so no command line takes it for an option. |
Publishing
| What you see | Why | The rule now |
|---|---|---|
| Identifying details in a making-of: names, profile codes, hosts, job ids | raw production notes | Scrub rules, a grep pass, and two fresh-eyes reads. |
| A song file carries the generator's song id in its tags | file metadata | Strip metadata from everything you publish. Midjourney images carry their job id in XMP. |
| Real-person likeness risk | generated portraits of real people | Keep generated likenesses of real people out; quote their words as text, with the source. CLODYSSEY's labelled AI IMAGE post cards are left out of this site. |
| A master posted without the AI disclosure | platform toggles missed | Set each platform's AI-content label, and name the tools. |