{ "planPath": "docs/plans/2026-06-26-otopcua-fixedtree-equipment-injection.md", "tasks": [ {"id": 1, "subject": "Task 1: DiscoveredNode DTO + CapturingAddressSpaceBuilder", "status": "completed"}, {"id": 2, "subject": "Task 2: DiscoveredNodeMapper + materialize DTOs", "status": "completed", "blockedBy": [1]}, {"id": 3, "subject": "Task 3: NodeManager RaiseNodesAddedModelChange", "status": "completed"}, {"id": 4, "subject": "Task 4: AddressSpaceApplier.MaterialiseDiscoveredNodes", "status": "completed", "blockedBy": [2, 3]}, {"id": 5, "subject": "Task 5: OpcUaPublishActor.MaterialiseDiscoveredNodes message+handler", "status": "completed", "blockedBy": [4]}, {"id": 6, "subject": "Task 6: DriverInstanceActor post-connect bounded re-discovery", "status": "completed", "blockedBy": [1]}, {"id": 7, "subject": "Task 7: DriverHostActor inject discovered nodes", "status": "completed", "blockedBy": [2, 5, 6]}, {"id": 8, "subject": "Task 8: DriverHostActor re-inject after rebuild", "status": "completed", "blockedBy": [7]}, {"id": 9, "subject": "Task 9: End-to-end discovered-node injection test", "status": "completed", "blockedBy": [7, 8]}, {"id": 10, "subject": "Task 10: Build + full suite + docker-dev smoke", "status": "completed", "blockedBy": [9]}, {"id": 11, "subject": "Task 11: Docs", "status": "completed", "blockedBy": [10]} ], "nativeTaskIds": { "1": 21, "2": 22, "3": 23, "4": 24, "5": 25, "6": 26, "7": 27, "8": 28, "9": 29, "10": 30, "11": 31 }, "lastUpdated": "2026-06-26T00:00:00Z", "status": "offline-complete; live wonder validation pending", "branch": "feat/focas-fixedtree-equipment-injection" }