FI Scenario Matrix

Machine-readable FI execution traceability is generated by:

  • edge/ci/tests/gen_traceability_report.sh

  • make fi output artifact: /tmp/edge-fi-report/traceability.md

FI-C1 — Core Failure Scenarios

Test ID

Description

Invariant

Go Test

Shell Test

FI-C1-01

Disk ceiling exceeded → ErrCeilingExceeded

INV-04

TestFI_DiskCeiling_ErrCeilingExceeded

FI-C1-01_disk_full.sh (root)

FI-C1-03

Mission process killed → relay unaffected

INV-10

TestFI_MissionProcessKill_RelayUnaffected

FI-C1-03_mission_kill.sh

FI-C1-05

High-durability without cgroup v2 → reduced assurance/error signal

INV-05

TestFI_Assurance_HighDurabilityNoCgroupV2

FI-C2 — Disk Ceiling / Concurrent Writes

Test ID

Description

Invariant

Go Test

Shell Test

FI-C2-01

Concurrent writes at boundary → ≤ 1 succeeds

INV-04

TestFI_DiskCeiling_ConcurrentWritesAtBoundary

FI-C2-02

Eviction failure → clean reject, no deadlock

INV-04

TestFI_DiskCeiling_EvictionFailure_WriteRejectedCleanly

FI-C3 — Authorization / Quota

Test ID

Description

Invariant

Go Test

Shell Test

FI-C3-02

Revoked cert → connection refused

INV-09

TestFI_Transport_RevokedCert_Rejected

FI-C3-03

Quota flood → drops logged, others unaffected

INV-13

TestFI_C3_03_AuthorizedPeerFlood, TestFI_QuotaFlood_OtherPeerUnaffected, TestFI_QuotaFlood_SessionNotDisconnected

FI-C4 — Retry Exhaustion

Test ID

Description

Invariant

Go Test

Shell Test

FI-C4-01

Retry exhaustion → terminal EXHAUSTED

INV-12

TestFI_Retry_Exhaustion

FI-C4-01_retry_exhaustion.sh

FI-C4-02

Count preserved across reconnect

INV-12

(noincrmt mode in shell probe)

FI-C4-01_retry_exhaustion.sh

FI-C4-03

EXHAUSTED persists beyond retry window

INV-12

TestFI_Retry_ExhaustedPersistsOverTime, TestFI_C4_03_NoPeriodicReactivation

FI-C4-01_retry_exhaustion.sh

Evidence

  • edge/fi/fi_assurance_test.go

  • edge/fi/fi_quota_test.go

  • edge/fi/fi_retry_test.go

  • edge/fi/fi_transport_test.go

  • edge/ci/tests/run_all.sh

  • edge/ci/tests/gen_traceability_report.sh

  • docs/_generated/test-outputs/demo-output.txt

See Also