Appearance
Story ownership
A story has many readers and, at any moment, one writer. SOM 1.0 does not say who that writer is: it only asks that each story.context snapshot's sequence_number increase. When two systems write the same story, they race. One wins, and the other's snapshot is refused as out of order or quietly replaces the winner's.
The bus adds a rule for this. It is this bus's rule (source: policy), not a SOM verdict.
The rule
- The first writer owns the story. The first system to publish a story, identified by its
originating_system.system_id, owns it. - Your workspace lists hand-offs. A hand-off is a pair of system ids, such as
ncs→cms: while the newsroom system owns a story, the web CMS may take it over. The next writer in a listed pair takes ownership with its first snapshot the bus accepts. From then on, the CMS owns the story, and the newsroom system is the one that is not the owner. - Anyone else breaks
story.not_owner. A snapshot from a system that neither owns the story nor takes it over through a listed hand-off.
A snapshot from a system that is not the owner never moves ownership, even when the bus accepts it.
What happens to such a snapshot
Each workspace chooses:
| Mode | What the bus does with story.not_owner |
|---|---|
| Warn (the default) | Accepts the snapshot (202) and lists the rule under tolerated, so the sender and the portal see it |
| Reject | Refuses the snapshot (409). Nothing is recorded or delivered |
| Off | Doesn't check. Ownership is still tracked, so you can turn the check on later |
Every workspace starts in warn, so nothing that works today is refused. When you know which systems write your stories, list the hand-offs, watch for warnings, then switch to reject.
Set it up
In the portal, open Story ownership in your workspace. Every member can see the mode and the hand-offs; admins and owners change them. Each change is recorded in the workspace's audit log, and applies to new snapshots within 30 seconds.
A hand-off goes one way. To let a story go back (the CMS returns it to the newsroom system), list the reverse pair too.
What to check in your system
- Stamp one
system_idper system, the same on every snapshot. A system that changes itssystem_idis, to the bus, a different system. - After a hand-off, only the new owner publishes snapshots. The previous owner reads them like any other consumer.
- For a test with a fresh owner, use a new
story_id: a story's owner never expires.
Related
- Snapshots, not deltas: what the bus checks against the previous snapshot.
- Verdicts and refusals:
tolerated,409and the four sources. - RND position P-13: the story's owner turns a skill's flag into a gate.