bc611969a9
Phase 4 of the per-cluster mesh program. Removes the four remaining driver-side ConfigDb consumers + the registration itself so a driver-only node boots with no ConfigDb connection string: - ConfigDb registered iff hasAdmin (Program.cs); driver-only requires none - driver-only ⇒ FetchAndCache mandatory (validator) - DbHealthProbeActor not spawned on driver-only; DbReachable=true constant (client-visible ServiceLevel change — a healthy DB-less node publishes 240/250 with central down, per user decision 2026-07-23) - DriverHostActor: nullable factory, drop redundant SQL ack-writes (central's PersistNodeAck is the ack system of record) - EfAlarmConditionStateStore → LocalDbAlarmConditionStateStore (new replicated alarm_condition_state table) Claude-Session: https://claude.ai/code/session_01GASWkNEi68FSCtvr6rLoEW
19 lines
1.7 KiB
JSON
19 lines
1.7 KiB
JSON
{
|
|
"planPath": "docs/plans/2026-07-23-mesh-phase4-cut-driver-configdb.md",
|
|
"tasks": [
|
|
{"id": 0, "subject": "Task 0: ConfigSourceOptionsValidator — driver-only ⇒ FetchAndCache", "status": "pending"},
|
|
{"id": 1, "subject": "Task 1: Program.cs — gate ConfigDb registration + health check on hasAdmin", "status": "pending"},
|
|
{"id": 2, "subject": "Task 2: DbHealthProbeActor — no spawn on driver-only; DbReachable=true constant", "status": "pending", "blockedBy": [1]},
|
|
{"id": 3, "subject": "Task 3: OpcUaPublishActor — nullable factory; rebuild always carries bytes", "status": "pending", "blockedBy": [2]},
|
|
{"id": 4, "subject": "Task 4: DriverHostActor — nullable factory; drop redundant SQL ack-writes", "status": "pending", "blockedBy": [1]},
|
|
{"id": 5, "subject": "Task 5: alarm_condition_state LocalDb table + LocalDbAlarmConditionStateStore", "status": "pending"},
|
|
{"id": 6, "subject": "Task 6: Wire LocalDb condition store into DriverHostActor for driver-role", "status": "pending", "blockedBy": [4, 5]},
|
|
{"id": 7, "subject": "Task 7: Registration cleanup + full-graph driver-only DI sweep", "status": "pending", "blockedBy": [2, 3, 4, 6]},
|
|
{"id": 8, "subject": "Task 8: Docs — Redundancy.md ServiceLevel + interop + Configuration.md + CLAUDE.md", "status": "pending", "blockedBy": [7]},
|
|
{"id": 9, "subject": "Task 9: Drop dead ConfigDb ScriptedAlarmState table + retire EfAlarmConditionStateStore", "status": "pending", "blockedBy": [6]},
|
|
{"id": 10, "subject": "Task 10: Rig — driver-only site nodes lose ConfigDb string", "status": "pending", "blockedBy": [7]},
|
|
{"id": 11, "subject": "Task 11: Live gate", "status": "pending", "blockedBy": [8, 9, 10]}
|
|
],
|
|
"lastUpdated": "2026-07-23"
|
|
}
|