Skip to main content

Developer Late-Arrival Reference

Metadata​

  • Owner: Origo Engineering
  • Last updated: 2026-04-14
  • Slice/version reference: S49

Purpose​

  • Developer reference for the canonical late-arrival registry and the explicit boundary between projection time semantics and operational progression.

Authoritative machine contract​

  • contracts/canonical-late-arrival-v1.json

Registry structure​

  • source declaration key:
    • (source_id, stream_id)
  • projection declaration key:
    • (source_id, stream_id, projection_id)
  • projection time-mode taxonomy:
    • event_time
    • ingestion_time
  • lateness semantics taxonomy:
    • clock_lag
    • publication_delay
    • availability_boundary
    • capture_cadence_gap

Important implementation boundary​

  • Current data-serving projections remain event_time.
  • In current Origo, event_time does not mean projector fetch/resume/checkpoint progression.
  • Projector progression stays operational and stream-sequence-based.
  • This slice freezes the declaration and evidence surfaces, not a hidden full bucket-replacement engine.

Runtime evidence surfaces​

  • origo/events/runtime_audit.py
    • late_arrival_rejection
    • late_arrival_supersession
  • origo/query/bitcoin_mempool_boundary.py
    • query-boundary errors for pre-capture mempool requests

Current supersession boundary​

  • Native serving has no bucket supersession concept.
  • Aligned serving requires a named supersession surface.
  • The registry records that the aligned bucket replacement mechanism is not runtime-enabled yet.
  • Do not fake this by implying MergeTree rows replace themselves.