Architecture Decision Record

ADR-0032: Cross-Zone Transfer Is Pull-Driven by the Receiving Zone

Status: Accepted · Date: 2026-03-06

Status: Accepted

Date: 2026-03-06

Context

BSFG already commits to:

One remaining synchronization question is directional control:

This choice affects firewall posture, operational autonomy, retry behavior, and whether the receiving zone controls its own intake cadence.

Options Considered

Option Description Benefits Drawbacks
Source-push replication Origin zone initiates outbound delivery whenever new facts are available.

|

| | Bidirectional symmetric push/pull | Allow both zones to use either push or pull as equal first-class transfer styles. |

|

| | Receiver-driven pull (Selected) | Destination zone initiates fetch from the source zone and appends locally after receipt. |

|

| | Shared scheduler/orchestrator | An external coordinator tells zones when and how to move facts. |

|

|

Decision

Cross-zone transfer is pull-driven by the receiving zone.

destination zone
  -> FetchFacts from source zone
  -> AppendFact into destination log
  -> ConfirmReceipt as durable destination commit

This means the receiving zone owns:

The source zone does not push facts as the canonical transfer primitive. It exposes retained history for authorized peers to pull.

Consequences

Benefits:

Tradeoffs: