Files
git.stella-ops.org/src/AirGap/StellaOps.AirGap.Controller/TASKS.md
2025-10-28 15:10:40 +02:00

2.2 KiB
Raw Blame History

AirGap Controller Task Board — Epic 16: Air-Gapped Mode

Sprint 56 Sealing Foundations

ID Status Owner(s) Depends on Description Exit Criteria
AIRGAP-CTL-56-001 TODO AirGap Controller Guild AUTH-OBS-50-001 Implement airgap_state persistence, seal/unseal state machine, and Authority scope checks (airgap:seal, airgap:status:read). State table created with migrations; seal/unseal transitions audited; unit tests cover happy/error paths.
AIRGAP-CTL-56-002 TODO AirGap Controller Guild, DevOps Guild AIRGAP-CTL-56-001, DEVOPS-AIRGAP-56-001 Expose GET /system/airgap/status, POST /system/airgap/seal, integrate policy hash validation, and return staleness/time anchor placeholders. APIs documented with OpenAPI; RBAC enforced; integration tests cover unauthorized/sealed states.

Sprint 57 Enforcement & Diagnostics

ID Status Owner(s) Depends on Description Exit Criteria
AIRGAP-CTL-57-001 TODO AirGap Controller Guild AIRGAP-CTL-56-002 Add startup diagnostics that block application run when sealed flag set but egress policies missing; emit audit + telemetry. Startup guard tested with simulated failure; telemetry includes airgap_sealed=true; docs updated.
AIRGAP-CTL-57-002 TODO AirGap Controller Guild, Observability Guild AIRGAP-CTL-56-002, TELEMETRY-OBS-50-001 Instrument seal/unseal events with trace/log fields and timeline emission (airgap.sealed, airgap.unsealed). Timeline events validated; logs include actor/tenant/policy hash; integration test covers duplication suppression.

Sprint 58 Time Anchor & Drift

ID Status Owner(s) Depends on Description Exit Criteria
AIRGAP-CTL-58-001 TODO AirGap Controller Guild, AirGap Time Guild AIRGAP-CTL-56-002, AIRGAP-TIME-57-001 Persist time anchor metadata, compute drift seconds, and surface staleness budgets in status API. Time anchor stored with bundle ID; drift calculation validated in tests; status API returns staleness metrics.