Files
git.stella-ops.org/docs/airgap/prep/2025-11-20-staleness-drift-prep.md
master d519782a8f
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
prep docs and service updates
2025-11-21 06:56:36 +00:00

1.2 KiB

Staleness & Drift Prep — PREP-AIRGAP-CTL-58-001-BLOCKED-ON-57-002

Status: Draft (2025-11-20) Owners: AirGap Controller Guild · AirGap Time Guild Scope: Capture the staleness/drift requirements for controller status once seal/unseal telemetry (57-002) is available.

Inputs

  • Time anchor ingestion from Time service (Roughtime/RFC3161) via time_anchor_id, drift_seconds, staleness_budget_seconds.
  • Bundle metadata from importer (bundle_id, manifest hash, generated_at).

Proposed status enrichments

  • Add fields to GET /system/airgap/status:
    • staleness_seconds_remaining
    • bundle_id
    • time_anchor_id
    • drift_seconds
  • Compute staleness_seconds_remaining = staleness_budget_seconds - drift_seconds (floor at 0).
  • Determinism: calculations purely from stored numbers; no wall-clock calls beyond persisted anchor timestamps.

Observability

  • Metrics: airgap_staleness_seconds{tenant} (gauge), airgap_drift_seconds{tenant}.
  • Timeline events emitted when budgets breached: airgap.staleness.threshold.

Handoff

Use this prep note to satisfy PREP-AIRGAP-CTL-58-001. After integrating sealed-startup telemetry and time anchor verification, implement the above fields and metrics, then mark the implementation task DOING.