docs: file Gitea issues for every deferred item; correct a stale limitation
Deferred work was living in plan docs and a CLAUDE.md banner rather than the issue tracker, so it was invisible unless you happened to read the right file. Each item was verified against the current tree before filing — nothing speculative, nothing already fixed: - #487 scripted-alarm redeploy recovery (CONFIRMED pre-existing bug). Verified still unfixed: ReassertValue exists only for VirtualTags, there is no OnAlarmsLoaded equivalent. Carries double-alarm-history risk, hence the careful proposed shape (node-only re-assert, never the alerts topic). - #488 periodic desired-vs-actual subscription reconcile. Records what exists today (Connected-entry re-assert + a health-poll tick that never touches subscriptions) and why a true reconcile needs a new ISubscribable member across 7 drivers, plus the cheap no-interface-change variant to try first. - #489 raw-tag rename hot-rebind (today: deploy-THEN-recreate). - #490 absolute-RawPath Monaco tag-path completion. - #491 continuous-historization live end-to-end + restart-convergence gate. CLAUDE.md's "KNOWN LIMITATION 1" was STALE and told the reader not to trust a cutover that has in fact been live-validated (read/write-persist/alarm-send all green; alarm-readback skipped as a confirmed protocol limitation, not a bug) — evidence in docs/plans/2026-06-27-otopcua-historian-followups.md. Rewritten as a passed gate, keeping the recipe for re-running it. Limitation 2 is genuinely open and now points at #491. The cross-repo ScadaBridge cutover was already tracked in that repo (its #14 open, #20 closed), so no duplicate was filed; the Batch 4 doc now says so, and records that the umbrella-index half is done. Claude-Session: https://claude.ai/code/session_01GASWkNEi68FSCtvr6rLoEW
This commit is contained in:
@@ -94,7 +94,7 @@ dual-namespace + event-delivery), Runtime 377 (+ VT reassert regression), AdminU
|
||||
|
||||
## Documented follow-ups (non-blocking)
|
||||
|
||||
- **Scripted-alarm redeploy recovery (CONFIRMED pre-existing bug, deferred — deserves its own careful fix).**
|
||||
- **Scripted-alarm redeploy recovery (CONFIRMED pre-existing bug, deferred — deserves its own careful fix). Filed as issue #487.**
|
||||
The scripted-alarm Part 9 condition node has the same redeploy-reset race the VT `ReassertValue` fix closed:
|
||||
`RebuildAddressSpace` clears `_alarmConditions` and `MaterialiseScriptedAlarms` recreates each condition
|
||||
fresh/normal, but `ScriptedAlarmEngine.LoadAsync` reloads from the persisted state and yields
|
||||
@@ -106,10 +106,11 @@ dual-namespace + event-delivery), Runtime 377 (+ VT reassert regression), AdminU
|
||||
historian issue). Proposed shape: a host-driven, node-only `AlarmStateUpdate` re-assert in `OnAlarmsLoaded`
|
||||
(same safe post-materialise ordering as the VT fix), reusing `_engine.GetState(alarmId)` + `LoadedAlarmIds`,
|
||||
**never touching the `alerts` topic**.
|
||||
- Raw-tag rename hot-rebind of the renamed tag's live value without a recreate (today: deploy-THEN-recreate).
|
||||
- Absolute-path Monaco completion → RawPath (from Batch 3; the `{{equip}}/` completion works).
|
||||
- Raw-tag rename hot-rebind of the renamed tag's live value without a recreate (today: deploy-THEN-recreate). Filed as issue #489.
|
||||
- Absolute-path Monaco completion → RawPath (from Batch 3; the `{{equip}}/` completion works). Filed as issue #490.
|
||||
- Cross-repo (post-merge): ScadaBridge Data-Connection-Layer NodeId/namespace cutover (raw `s=<RawPath>` /
|
||||
UNS `s=<Area>/<Line>/<Equipment>/<EffectiveName>`, retired `EquipmentNodeIds`) + the umbrella index
|
||||
`../scadaproj/CLAUDE.md` OtOpcUa entry.
|
||||
UNS `s=<Area>/<Line>/<Equipment>/<EffectiveName>`, retired `EquipmentNodeIds`) — tracked in the
|
||||
ScadaBridge repo as its issue #14 (its #20 landed the `nsu=` binding + native-alarm routing). The umbrella
|
||||
index `../scadaproj/CLAUDE.md` OtOpcUa entry is **DONE** (scadaproj `ede5275`).
|
||||
|
||||
https://claude.ai/code/session_01LVneM3eh1UtJxEisFXgmox
|
||||
|
||||
Reference in New Issue
Block a user