Skip to main contentSkip to navigation

Realtime

The company-scoped event bus, and the recovery model that makes a dropped stream survivable.

Publish an event

Each button publishes through the real FoundationEventBus. Two of them are meant to be refused.

Nothing has been refused yet. A cross-company event never enters the bus at all, so it cannot reach a subscriber or the history.

The stream

Drop it, publish while it is down, then reconnect. Reconnecting is not proof that nothing was missed.

connectedin syncThe stream is already connected.Nothing needs resyncing.

What the client no longer trusts

An event marks a revision stale; it never writes a value. That is §31.3 made mechanical.

Revision ledger
SurfaceRevision last fetchedStateWhy
navigationnav_7fresh
settingsset_2fresh
dashboardwid_4fresh
brandingbrand_1fresh
notificationsntf_9fresh

Delivered events

Company-scoped and validated before any subscriber runs, so an invalid event is never half-delivered.

Publish something above.

The mapping from event to invalidated surface is data, not a switch inside a component: revisionKeysForEvent("foundation.customization.published") is branding, navigation, theme. Three copies of that mapping in three components would disagree the day a new event type is added.