Every show runs the same seven stages. Its Show DNA decides what each stage means, so adding a show means writing its DNA, not building a new app.
Follow the sources this show cares about: channels, people, feeds, communities, other languages, our own inbox.
AI reads every item with and for us: transcript, translation, a Read card of claims, quotes, people. Code checks every quote.
Numbers decide what matters: spike against the source’s own baseline, independent sources, freshness. Every keep or cut has a reason.
Score each card on the show’s own criteria and weights. Below the threshold it is parked, never deleted.
Turn their angle into ours with the show’s angle rules. Check our past coverage. ‘Quiet day’ is an allowed answer.
Produce the show’s output pack: steps with dependencies, each reviewable and regenerable with feedback.
Get it to the people who matter: the guest, the audience, or the subject’s right to reply.
id / showWhich show owns it; the DNA version it was made onsources[]Every item it came from, with baseline and spikereadRead card: claims, quotes with excerpt labels, people, entitiesgateKept / cut / parked, with the written reasonfitScore per criterion, total, thresholdtwistTheir angle, our angle, alternatives, prior coverageoutputs[]Make steps: status, version, feedbackreachWho, how, when; approvalsresultsWhat happened after publish (feeds Learn)Every screen reads the same object. Desks are views of one card type, so a flow written once runs for every show. Only the extension differs, and the unit of work in Show DNA decides which one a card gets.
contact_routesranked, with confidenceanonymityblur, voice, aliasinterviewguide from the output packclockfirst seen → publish bycitationsexcerpt labels, verifiedlanebreaking / dailyclaims[]status, source countnetworknodes and edgesright_of_replysent date, response