Integration backbone

if.bus

A message backbone that standardizes how events move between systems — so integrations stay clean, auditable, and easy to extend.

Preview: we’re opening a small cohort to shape the first adapters and contracts. The bus is designed to make outputs verifiable by default via if.trace.

Status (black/white): if.bus is preview. A reference runtime exists (internal-only) but no public bus endpoints are claimed. if.trace binding remains a verification posture for published outputs — not a “trust me” guarantee.

Why it matters
Stops integration sprawl

Every integration speaks the same envelope. When a system changes, you update one adapter — not ten downstream scripts.

Makes verification the default

The platform design assumes outputs can be bound to if.trace receipts, so disputes become “verify” instead of “trust me”.

How it works

A clean spine with simple adapters (two-way).

Producers + consumers
GitHub, Jira, Slack, docs, tickets, monitors.
if.api adapters
Ingress + egress contracts. One adapter per system.
if.bus spine
Normalize → route → record the “what happened” chain.
Surfaces + outputs
Packs, alerts, decisions, reports — optionally bound to if.trace by default.
Optional: verification
Outputs can be bound to if.trace receipts so third parties can verify bytes without accounts.
Optional: document CI
if.typeset turns Markdown into reviewable HTML/PDF with QA signals and trust contracts.
Optional: governance
if.gov decision packs become a first-class output of bus activity (assumptions, risks, deltas).
contact