← back to Crazy News Channel

scripts/cartoon-prompt-bank.mjs

61 lines

// cartoon-prompt-bank.mjs — the P24 Cartoon Desk's rotating idea bank.
// Every entry is [id, title, brief, category]. All INVENTED, good-natured,
// non-partisan — satirizes bureaucracy/institutions/small-town life in the
// abstract, never real people/parties/companies/brands.
//
// category is one of: politics | business | entertainment | scitech | sports |
// weather (matches the P24 story category keys in ../stories-data.js and the
// manifest.js `section` field cartoons/index.html filters/colors by).
//
// PREP ONLY (TK-12142, 2026-09-24): category was just added so daily-cartoon-gen.mjs
// can carry it through to queue briefs. The SELECTION algorithm in
// daily-cartoon-gen.mjs is still a flat date-seeded shuffle across the WHOLE bank —
// it does NOT yet group/weight by category or guarantee category coverage per day.
// That mix decision (e.g. "1 per category/day" vs "still politics-heavy") is left to
// a future session per Steve's instruction not to change default daily-batch behavior
// in this pass. The scheduled job itself also remains un-installed
// (see build-cartoon-batch.sh header) — nothing here changes live output today.
//
// Already-built (skip, don't regenerate): seesaw-debate, form-to-request-a-form,
// ship-of-state-committee, law-rube-goldberg (built via Model Arena 2026-09-18/22).
export const CARTOON_BANK = [
  // ---- politics (original 12) ----
  ['committee-clock', 'The Committee That Meets About Meeting', "A single bold SVG cartoon of an INVENTED oversight committee convened solely to schedule the committee that will decide whether to form a committee. A wall clock's hands are made of gavels. Click the gavel-hands to advance the (glacial) meeting; a 'motion to adjourn' button always fails hilariously.", 'politics'],
  ['red-tape-maze', 'The Red Tape Labyrinth', "A three-panel SVG strip: a citizen enters an INVENTED permit office as a straightforward hallway; each panel the hallway visibly grows a new looping detour of literal red tape. A 'shortcut' button always adds MORE tape. Good-natured, invented office.", 'politics'],
  ['budget-pie-fight', 'Who Gets the Last Slice', "A single-image SVG metaphor: an INVENTED town budget as a pie diners keep re-slicing smaller at a banquet table, each guest an invented department mascot. Dragging a slider re-carves the pie and the caption rewrites live. Light/dark toggle.", 'politics'],
  ['filibuster-marathon', 'The Filibuster Marathon', "A three-panel SVG strip about an INVENTED legislator who begins reading a phone book aloud to stall a vote; panel 2 a clock melts Dali-style, panel 3 the whole chamber has fallen asleep standing up. A 'plot twist' button swaps what they're reading (cereal box, assembly instructions, their own bill).", 'politics'],
  ['pork-barrel-train', 'The Pork Barrel Express', "A single bold SVG illustration: an INVENTED infrastructure bill as a train where each car is a wildly unrelated rider project (a lighthouse in a desert, a ferris wheel). Clicking a car reveals its invented cost. Caption adapts to how many cars are attached.", 'politics'],
  ['gerrymander-jigsaw', 'The Shape of Things to Come', "A three-panel SVG strip where an INVENTED district map is redrawn by a cartoon hand into an increasingly absurd jigsaw creature (a dragon, then a teapot, then a smiley face) while officials insist nothing has changed. Click to advance the redraw; a twist button picks the next shape.", 'politics'],
  ['lobbyist-revolving-door', 'The Revolving Door', "A single SVG scene: an INVENTED capitol building's revolving door where the same invented figure exits as a regulator and re-enters seconds later as a lobbyist, carrying a slightly bigger briefcase each spin. Click to spin the door; a counter tallies revolutions.", 'politics'],
  ['filibuster-vs-cloture', "Cloture o'Clock", "A three-panel SVG strip: an INVENTED senate clock personified, wound up by one side and unwound by the other, ticking backward and forward until it just shrugs. Non-partisan, invented chamber and characters only. Plot-twist button changes the clock's expression.", 'politics'],
  ['earmark-tug-of-war', 'The Earmark Tug-of-War', "A single bold SVG illustration: an INVENTED rope-pull where each team is a caricatured interest group hauling a giant dollar-sign log toward their own tiny truck. Dragging changes who's winning and rewrites the caption. Light/dark toggle.", 'politics'],
  ['commission-turtles', 'Commissions All the Way Down', "A three-panel SVG strip: an INVENTED blue-ribbon commission recommends forming a commission to study its own recommendation, panel by panel nesting turtle-commissions smaller and smaller (a Droste-style recursion of officials). Click to descend a level; plot twist reshuffles which invented mascot appears at the bottom.", 'politics'],
  ['sunset-clause-sundial', 'The Sunset Clause That Never Sets', "A single SVG metaphor: an INVENTED law's 'sunset clause' as a sundial where the shadow keeps getting renewed by an official running out with a bigger gnomon before dusk ever arrives. Interactive: drag the sun, shadow always gets 'extended'.", 'politics'],
  ['quorum-call-hide-seek', 'The Quorum Call', "A three-panel SVG strip: an INVENTED legislative chamber plays hide-and-seek to dodge a quorum call — panel 1 the roll is called, panel 2 desks are empty with little paper cutouts propped in chairs, panel 3 the sergeant-at-arms searches a suspiciously form-shaped closet. Plot twist changes the hiding spot.", 'politics'],

  // ---- business (stub, 3) ----
  ['loyalty-tier-avalanche', 'The Loyalty Tier That Ate the Store', "A single bold SVG illustration: an INVENTED corner shop's punch-card loyalty program escalates panel-by-panel into ever-fancier invented tiers (Bronze Regular -> Platinum Concierge -> a velvet rope at the cash register) while the shop itself shrinks around it. Click to advance a tier; a 'redeem' button always reveals a new, bigger requirement.", 'business'],
  ['fine-print-scroll', 'The Terms That Never End', "A three-panel SVG strip: an INVENTED customer signs up for a simple gadget and a scroll of terms-and-conditions unspools panel by panel until it fills the whole shop and spills into the street. Click to keep scrolling; a 'skip to bottom' button always adds one more clause.", 'business'],
  ['subscription-hydra', 'The Subscription That Grew Heads', "A single SVG metaphor: an INVENTED streaming-style subscription as a friendly mascot that sprouts a new tiny add-on head (ad-free, offline, bonus lane) every time a user tries to cancel one. Click 'cancel' to watch a new head sprout; caption tallies the monthly total.", 'business'],

  // ---- entertainment (stub, 3) ----
  ['open-mic-infinity', 'The Open Mic That Never Closes', "A three-panel SVG strip: an INVENTED coffeehouse open-mic night where the sign-up list keeps growing a fresh page every time the last invented performer finishes, the clock visibly loses track of what day it is. Click to add the next act; plot twist swaps the genre placard.", 'entertainment'],
  ['statue-selfie-line', 'The Line for the Statue for the Line', "A single bold SVG illustration: an INVENTED roadside attraction statue where the queue to photograph it becomes so popular that a second, smaller statue is erected of the queue itself, drawing its own queue. Click to spawn the next mini-statue; caption updates the queue-of-queues count.", 'entertainment'],
  ['festival-mascot-election', 'The Mascot Who Ran Unopposed', "A three-panel SVG strip: an INVENTED small-town festival's costumed mascot accidentally gets entered on a ballot for 'Grand Marshal' and wins unopposed, then has to be sworn in still wearing the felt head. Plot twist button swaps which invented critter mascot it is.", 'entertainment'],

  // ---- scitech (stub, 3) ----
  ['smart-fridge-uprising', 'The Fridge That Knew Too Much', "A single SVG scene: an INVENTED 'smart' kitchen appliance's notification panel grows a new unsolicited suggestion bubble every time it's tapped, eventually dwarfing the fridge itself in a tower of sticky-note-style alerts. Click to dismiss one; a new, weirder one always appears.", 'scitech'],
  ['captcha-escalation', "The Robot Who Couldn't Prove It", "A three-panel SVG strip: an INVENTED helpful household robot is asked to prove it's not a robot by an increasingly absurd series of invented CAPTCHA challenges (traffic lights, crosswalks, a hand-drawn maze) that get harder each panel. Plot twist swaps the challenge type.", 'scitech'],
  ['server-room-thermostat-war', 'The Thermostat Standoff', "A single bold SVG illustration: an INVENTED office's server room and its break room silently battle over one shared thermostat dial, each side's sticky-note demands stacking higher. Dragging the dial re-labels who's currently 'winning.'", 'scitech'],

  // ---- sports (stub, 3) ----
  ['tiebreaker-overtime-spiral', "The Game That Wouldn't End", "A three-panel SVG strip: an INVENTED rec-league match keeps going to sudden-death overtime so many times the scoreboard runs out of digits and switches to Roman numerals. Click to add another overtime; plot twist swaps which invented sport it is (kickball, bocce, cornhole).", 'sports'],
  ['bleacher-superstition-tower', 'The Lucky Seat', "A single SVG metaphor: an INVENTED fan's 'lucky seat' ritual grows a new invented superstition item (rally cap, thunder-stick, borrowed jersey) stacked on the bleacher bench with every win, until the pile is taller than the fan. Click to add the next item.", 'sports'],
  ['halftime-show-runaway', 'The Halftime Show That Kept Adding Acts', "A three-panel SVG strip: an INVENTED small-stadium halftime show keeps booking 'just one more' invented act between innings until the game itself is delayed by its own entertainment. Plot twist swaps the act (marching kazoo band, dog frisbee team, unicycle relay).", 'sports'],

  // ---- weather (stub, 3) ----
  ['fog-bank-schedule', 'The Fog That Keeps Office Hours', "A single bold SVG illustration: an INVENTED coastal town's fog bank rolls in and out on a suspiciously punctual 9-to-5 schedule, complete with a little fog 'clock-out' each evening. Click to advance the hour; caption tracks whether the fog is 'on the clock.'", 'weather'],
  ['snow-drift-property-line', 'The Drift That Knows the Deed', "A three-panel SVG strip: an INVENTED snowstorm politely piles snow exactly along one homeowner's property line and nowhere else, panel by panel building a suspiciously tidy drift wall. Plot twist swaps which invented neighbor benefits.", 'weather'],
  ['rainbow-permit-office', 'The Rainbow That Needed a Permit', "A single SVG metaphor: an INVENTED town's recurring rainbow is asked to file for a standing-display permit after appearing in the same spot too many afternoons in a row, with a little clipboard-wielding official measuring its arc. Click to advance the review stage.", 'weather'],
];