Files
scadaproj/docs/plans/2026-07-16-secrets-adoption-scadabridge.md.tasks.json
T

25 lines
2.4 KiB
JSON

{
"planPath": "docs/plans/2026-07-16-secrets-adoption-scadabridge.md",
"design": "docs/plans/2026-07-16-secrets-adoption-design.md",
"app": "ScadaBridge",
"gaps": ["G-3", "G-4", "G-5", "G-6"],
"slices": {
"1": {"desc": "config + UI + clustering", "tasks": [1, 2, 3, 4, 5, 6, 7, 8]},
"2": {"desc": "G-3 Layer-B MxGateway ApiKey", "tasks": [9, 10]}
},
"tasks": [
{"id": 1, "subject": "Package references + CPM versions + nuget.config mapping", "status": "completed", "classification": "small", "slice": 1},
{"id": 2, "subject": "Layer-A pre-host ${secret:} expander (G-4 mechanism)", "status": "completed", "classification": "standard", "slice": 1, "blockedBy": [1]},
{"id": 3, "subject": "Runtime AddZbSecrets on the host container", "status": "completed", "classification": "small", "slice": 1, "blockedBy": [2]},
{"id": 4, "subject": "G-4: formalize ${SCADABRIDGE_*} placeholders -> ${secret:} tokens", "status": "completed", "classification": "standard", "slice": 1, "blockedBy": [3]},
{"id": 5, "subject": "G-4 cleanup: remove committed dev plaintext + loose *_login.txt", "status": "completed", "classification": "small", "slice": 1, "blockedBy": [4]},
{"id": 6, "subject": "G-6: claim-type VERIFICATION (RequireRole vs RequireClaim)", "status": "completed", "classification": "high-risk", "slice": 1, "blockedBy": [1]},
{"id": 7, "subject": "G-6: register secrets authorization + mount /admin/secrets", "status": "completed", "classification": "standard", "slice": 1, "blockedBy": [3, 6]},
{"id": 8, "subject": "G-5: clustered master-key posture (central pair + site nodes)", "status": "completed", "classification": "standard", "slice": 1, "blockedBy": [2]},
{"id": 9, "subject": "G-3: resolve the MxGateway ApiKey secret: ref at runtime (Layer B)", "status": "completed", "classification": "high-risk", "slice": 2, "blockedBy": [3]},
{"id": 10, "subject": "Verification: build, suites, live connection", "status": "completed", "classification": "standard", "slice": 2, "blockedBy": [1, 2, 3, 4, 5, 6, 7, 8, 9]}
],
"sweepNote": "Retro-completed by the 2026-08-07 documentation truth sweep: the program this ledger tracks is recorded as shipped/complete in scadaproj CLAUDE.md (ScadaBridge adopted G-3/G-4/G-5/G-6, merged to origin/main @ 128f1596 2026-07-16, G-3 live-proven); the ledger was never flipped when the work landed.",
"lastUpdated": "2026-08-07T00:00:00Z"
}