152 lines
3.5 KiB
JSON
152 lines
3.5 KiB
JSON
{
|
|
"planPath": "docs/plans/2026-06-26-otopcua-fixedtree-followups.md",
|
|
"tasks": [
|
|
{
|
|
"id": 1,
|
|
"subject": "Task 1: Injectable discovery timeout (A)",
|
|
"status": "completed",
|
|
"nativeId": 38,
|
|
"commits": [
|
|
"c2c368dc"
|
|
]
|
|
},
|
|
{
|
|
"id": 2,
|
|
"subject": "Task 2: RediscoverPolicy enum + driver overrides (B1)",
|
|
"status": "completed",
|
|
"nativeId": 39,
|
|
"commits": [
|
|
"a378b572",
|
|
"efbdaf85"
|
|
]
|
|
},
|
|
{
|
|
"id": 3,
|
|
"subject": "Task 3: DriverInstanceActor honors policy (B2)",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
1,
|
|
2
|
|
],
|
|
"nativeId": 40,
|
|
"commits": [
|
|
"ce34816a",
|
|
"a1a655e6"
|
|
]
|
|
},
|
|
{
|
|
"id": 4,
|
|
"subject": "Task 4: TriggerRediscovery message + handler (C1)",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
3
|
|
],
|
|
"nativeId": 41,
|
|
"commits": [
|
|
"f7358bf4",
|
|
"e7d5ebe9"
|
|
]
|
|
},
|
|
{
|
|
"id": 5,
|
|
"subject": "Task 5: EquipmentNode DriverInstanceId/DeviceId/DeviceHost (E projection)",
|
|
"status": "completed",
|
|
"nativeId": 42,
|
|
"commits": [
|
|
"cb7ce7f1",
|
|
"915492a7"
|
|
]
|
|
},
|
|
{
|
|
"id": 6,
|
|
"subject": "Task 6: DriverHostActor cache-as-dict + driver-level resolution (E1)",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
5
|
|
],
|
|
"nativeId": 43,
|
|
"commits": [
|
|
"adcd7b57"
|
|
]
|
|
},
|
|
{
|
|
"id": 7,
|
|
"subject": "Task 7: Re-trigger discovery on rebind drop (C2)",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
4,
|
|
6
|
|
],
|
|
"nativeId": 44,
|
|
"commits": [
|
|
"53367148",
|
|
"cde16063"
|
|
]
|
|
},
|
|
{
|
|
"id": 8,
|
|
"subject": "Task 8: Single SetDesiredSubscriptions per redeploy (D)",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
7
|
|
],
|
|
"nativeId": 45,
|
|
"commits": [
|
|
"05c82079",
|
|
"51721df5"
|
|
]
|
|
},
|
|
{
|
|
"id": 9,
|
|
"subject": "Task 9: Multi-device-per-driver partition (E2)",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
5,
|
|
8
|
|
],
|
|
"nativeId": 46,
|
|
"commits": [
|
|
"50f08635",
|
|
"0074f37a"
|
|
]
|
|
},
|
|
{
|
|
"id": 10,
|
|
"subject": "Task 10: Docs \u2014 follow-up notes + statuses",
|
|
"status": "completed",
|
|
"blockedBy": [
|
|
9
|
|
],
|
|
"nativeId": 47
|
|
},
|
|
{
|
|
"id": 11,
|
|
"subject": "Task 11: Build + offline suite + regression gate",
|
|
"status": "obsolete",
|
|
"blockedBy": [
|
|
2,
|
|
4,
|
|
9,
|
|
10
|
|
],
|
|
"nativeId": 48,
|
|
"note": "Closed 2026-08-10 as obsolete: the FixedTree-under-Equipment injection feature this gate verified was deleted wholesale when #507 closed as superseded (DiscoveredNodesReady, DiscoveredNodeMapper, HandleDiscoveredNodes, the connect-time discovery loop, and the 18 DiscoveryInjectionDormantV3 tests are all gone in v3). A verification gate for deleted code verifies nothing. ITagDiscovery itself lives on via the /raw browse picker (DiscoveryDriverBrowser), which has its own coverage."
|
|
}
|
|
],
|
|
"nativeTaskIds": {
|
|
"1": 38,
|
|
"2": 39,
|
|
"3": 40,
|
|
"4": 41,
|
|
"5": 42,
|
|
"6": 43,
|
|
"7": 44,
|
|
"8": 45,
|
|
"9": 46,
|
|
"10": 47,
|
|
"11": 48
|
|
},
|
|
"lastUpdated": "2026-06-26T00:00:00Z",
|
|
"status": "code+docs complete; final build/suite gate pending",
|
|
"branch": "feat/focas-fixedtree-equipment-injection"
|
|
} |