Appearance
Newsroom workflows
The newsroom workflows page tells seven newsroom moments as the SOM 1.0 messages that systems exchange: who sends what, who receives it, and what the bus does at every step. It's written for publishers and vendors alike. This page is the vendor's companion: for each workflow, the messages in order, and where these docs cover building and testing your part.
Find your product in Which parts apply to you first. The workflows then show where it fits in a newsroom.
1. Breaking story, every screen in step
A newsroom system publishes successive complete snapshots of one story; graphics, the web CMS, playout and the standards desk all converge on the latest.
| Step | Message | The bus |
|---|---|---|
| Each new version | story.context, sequence_number + 1 | 202, delivered in order per story |
| A retry after a timeout | Same message_id, same content | 200, a duplicate nobody receives twice |
| A stale version | Lower sequence_number | 409 sequence_number.not_increasing |
Build it: Snapshots, Run a whole story, Retry safely. Consume it: Order, duplicates and snapshots.
2. Media lands, the story knows
| Step | Message | The bus |
|---|---|---|
| Media arrives in a store | delivery.media_available: a reference, never the media | 202; over 240 KB is message.too_large |
| The story lists it | story.context with a VIDEO asset and media_refs | Assets may not be dropped (snapshot.assets_dropped) or change type (asset.type_changed) |
| A machine transcript, then a person's review | story.context: provenance.author MODEL, review.state PENDING → CONFIRMED | 202 |
Read: Message families, Snapshots.
3. Tip-line clip to verified asset
| Step | Message | The bus |
|---|---|---|
| A clip with no story | story.context, story_type ORPHAN, a MATCH assertion and a pending VERIFICATION gate | 202 |
| A skill flags it | skill.warning.raised, severity flag | 202; a skill can't publish story.context (producer.message_type_not_allowed) |
| Verified and matched | The target story's next story.context adds the clip; gate APPROVED | 202 |
Test it: the orphan-clip cases of the skill harness, and Test a skill by hand.
4. Standards gate before air
| Step | Message | The bus |
|---|---|---|
| Graphics books a lower third | link.committed, compliance_gate_status PENDING | 202 |
| Graphics tries to clear it | link.gate_changed | 403 producer.message_type_not_allowed |
| Standards clears it | link.gate_changed CLEARED, then system.audit CLEARED | 202 |
| It airs | telling.started, then telling.ended | 202 |
Grants are per app: see Plan your integration and Credentials.
5. AI skill as a second pair of eyes
| Step | Message | The bus |
|---|---|---|
| A new version | story.context | Delivered to the executor's consumer connection |
| A warning | skill.warning.raised, severity flag or hold | 202, carried. Tools withhold held fields; the bus doesn't |
| The editor acts | The next story.context | 202 |
Build it: Skills and executors, A warning that validates. Test it: the skill harness in Test runs.
6. Kill a story everywhere
| Step | Message | The bus |
|---|---|---|
| The story is killed | story.context, story_type KILLED | 202, in order |
| A stale save revives it | story.context, story_type ACTIVE | 409 story_type.left_terminal |
| Everything stops | link.withdrawn, telling.ended, system.audit SUPPRESSED | 202 |
7. Plug a new system into a live newsroom
| Step | How | Status |
|---|---|---|
| Its own queue | A consumer connection with filters | Available now |
| Read over HTTPS | The pull API | Available now |
| Catch up on running stories | Replay a time range from the archive | Available now |
| Survive a bad message | The dead-letter queue | Available now |
| Prove it | Consumer tests, then a results statement | Available now |
Rehearse them in a house
A publisher can play workflows 1 to 6 through its house, step by step, and see which of its vendors' systems played each part: see Rehearse a workflow. RND stand-ins play the parts no vendor holds yet. The seventh is done in the portal, so it has nothing to rehearse.
About the examples
Payload details follow the published SOM 1.0 examples (the hurricane run, the orphan clip, the style warning, the suppression audit). Grants such as "graphics may publish link.committed but not link.gate_changed" are one way a house could set them up, not something SOM requires.