← the/FBFbatpak cellmark — a battery-pack icon: green data cells above an orange append-only, hash-chained log, framed in code bracketsProjections

Projections

The log is the source of truth. A projection is a cached interpretation.

Factory prose may call projections gauges. The Rust API should keep the engineering name Projection.

Projection Rules

  • A projection is derived from events.
  • A projection may be rebuilt.
  • A projection cache is optional acceleration unless a surface explicitly says otherwise.
  • A stale projection must be classified, not silently treated as fresh.
  • A projection failure should produce typed outcome or evidence when user-visible freshness depends on it.

Outside The Model

If a value cannot be rebuilt from the log, it is application state outside batpak’s projection model.

That may be valid application design. It is not a batpak projection.