Joseph Doherty
68c6f36cfe
docs(plans): mark F13a partial-complete ( 36c4751)
v2-ci / build (push) Failing after 42s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
2026-05-26 07:35:04 -04:00
Joseph Doherty
229282ad8b
docs(plans): mark F21 complete ( b0a2bb0)
v2-ci / build (push) Failing after 43s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
2026-05-26 07:25:36 -04:00
Joseph Doherty
ba6e5dd7f9
docs(plans): mark F11 + F22 complete
...
v2-ci / build (push) Failing after 49s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
F22 → cd5540c (failover scenarios on TwoNodeClusterHarness)
F11 → 6861381 (HistorianAdapterActor → IAlarmHistorianSink bridge)
Branch follow-ups: 11/22 → 13/22 done. Remaining 9 are engine wiring
gated on real drivers/SDKs (F7-F10, F13-F14), Admin UI rebuild (F15),
fold-in to F7 (F20), and SQL/LDAP harness mode (F21).
2026-05-26 07:19:07 -04:00
Joseph Doherty
4e6ef648d1
docs(plans): mark F16 complete
v2-ci / build (push) Failing after 3m8s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
2026-05-26 07:01:54 -04:00
Joseph Doherty
7a6b016d9e
docs(plans): mark F17 complete
v2-ci / build (push) Failing after 41s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
2026-05-26 06:58:27 -04:00
Joseph Doherty
337a691629
docs(plans): mark F3, F4, F5, F12 follow-ups complete
v2-ci / build (push) Failing after 38s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
2026-05-26 06:55:39 -04:00
Joseph Doherty
b06e3ae740
feat(runtime): PeerOpcUaProbeActor real TCP-connect probe (F12)
...
Replaces the Ok=true stub with a TCP connect to the peer's OPC UA port (4840
default) with a 2s timeout. A successful connect indicates the OPC UA server
process is up + accepting connections — enough for the redundancy calculator
to treat the peer as live. A full secure-channel Hello/Acknowledge handshake
is overkill for what the redundancy calc consumes and would pull in the OPC
UA Client SDK + a PKI setup. Upgrade later if a deeper liveness signal is ever
required.
Probe extracts the host from NodeId by stripping the :port suffix (commit
5cfbe8b encoded host:port into NodeId for cluster-member identity).
Tests: 2 new tests — Ok=true against a live TcpListener on a chosen port,
Ok=false against an unreachable endpoint. All 17 Runtime tests pass (was 16
covering only the message-contract surface).
2026-05-26 06:54:51 -04:00
Joseph Doherty
8e5c8e29f7
docs(plans): mark Task 61 complete
v2-ci / build (push) Failing after 1m21s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (push) Has been skipped
2026-05-26 06:49:06 -04:00
Joseph Doherty
8ac71db464
docs(plans): mark Tasks 62, 63, 64, 65 complete
2026-05-26 06:46:55 -04:00
Joseph Doherty
a8becc9c46
docs(plans): mark Task 59 complete; track F22 failover scenarios
2026-05-26 06:35:03 -04:00
Joseph Doherty
62e3cd6599
docs(plans): mark Task 58 complete; track F21 docker-compose follow-up
2026-05-26 06:27:33 -04:00
Joseph Doherty
bb353c4d43
docs(plans): mark F1, F2, F6, F18, F19 follow-ups complete
...
Post-compaction batch of 5 follow-ups landed:
- F19 (09d6676 ): WithOtOpcUaRuntimeActors extension for driver-role spawn
- F1 (463512d ): AuthEndpoints integration tests via TestServer
- F6 (dfc143c ): RedundancyStateActor broadcast override + un-skip 2 tests
- F18 (b266f63 ): User.Identity.Name into Deployments createdBy
- F2 (45a8c79 ): JwtBearer validation via IPostConfigureOptions
2026-05-26 06:18:31 -04:00
Joseph Doherty
698709a578
docs(plans): mark Tasks 56+57 complete
2026-05-26 05:39:07 -04:00
Joseph Doherty
2b75ce3876
docs(plans): mark Phase 9 tasks 53-55 complete; track F19/F20 follow-ups
2026-05-26 05:23:48 -04:00
Joseph Doherty
eb4280b7eb
docs(plans): add F15-F18 follow-ups for Phase 8 deferred scope
2026-05-26 05:19:02 -04:00
Joseph Doherty
8a1f97b27f
docs(plans): mark Phase 8 tasks 48-52 complete; track F15-F18 follow-ups
2026-05-26 05:18:37 -04:00
Joseph Doherty
5e31449529
docs(plans): mark Phase 7 tasks 46+47 complete; track F13/F14 full-extraction follow-ups
2026-05-26 05:15:18 -04:00
Joseph Doherty
2e4f1399bb
docs(plans): mark Phase 6 tasks 39-45 complete (race-recovered commit)
2026-05-26 05:10:21 -04:00
Joseph Doherty
e31547d00e
docs(plans): mark Phase 6 tasks 37-45 complete; track F7-F12 engine-wiring follow-ups
2026-05-26 05:09:52 -04:00
Joseph Doherty
ea6f972e96
docs(plans): mark Phase 5 tasks 30-36 complete with commit hashes
2026-05-26 04:57:37 -04:00
Joseph Doherty
bad2aef137
docs(plans): track F5 multi-node coordinator test + F6 RedundancyState publisher refactor
2026-05-26 04:53:32 -04:00
Joseph Doherty
9582e448d5
docs(plans): track F4 WrapDetails JSON hardening follow-up
2026-05-26 04:46:18 -04:00
Joseph Doherty
1955bc5f4d
docs(plans): mark Task 33+35 partial complete; track F3 audit-idempotency follow-up
2026-05-26 04:44:37 -04:00
Joseph Doherty
32574b3e4e
docs(plans): track JwtBearer DI antipattern as follow-up F2
2026-05-26 04:39:10 -04:00
Joseph Doherty
fc22d4f7b6
docs(plans): track AuthEndpoints integration tests as follow-up F1
2026-05-26 04:37:49 -04:00
Joseph Doherty
973a3d1b9a
docs(plans): mark Tasks 24-29 complete in tasks.json
2026-05-26 04:36:17 -04:00
Joseph Doherty
f35925b57e
docs(plans): mark Tasks 19-23 complete in tasks.json
2026-05-26 04:31:28 -04:00
Joseph Doherty
fdb4ac7051
docs(plans): mark Tasks 15-18 complete in tasks.json
2026-05-26 04:27:41 -04:00
Joseph Doherty
990ce343fe
docs(plans): split Task 14 into 14a-14f (entity-model rewrite)
...
The original Task 14 (5-min EF migration that "drops ConfigGeneration") was
under-scoped: the design doc (live-edit model, ~line 208) requires removing
GenerationId from 13 entities (Equipment, DriverInstance, Device, Tag,
PollGroup, Namespace, UnsArea, UnsLine, NodeAcl, Script, VirtualTag,
ScriptedAlarm) and adding RowVersion columns for last-write-wins detection.
That cascades into GenerationApplier / GenerationDiff / GenerationSealedCache
and the legacy Server/Admin CRUD services.
New decomposition (~85 min total, replacing the original 5-min estimate):
14a standard 10m Add RowVersion to live-edit entities
14b high-risk 30m Drop GenerationId FK from those entities
14c high-risk 20m Obsolete GenerationApplier/Diff/SealedCache
14d standard 5m Drop ClusterNode.RedundancyRole
14e small 5m Delete ConfigGeneration + ClusterNodeGenerationState
14f high-risk 15m Consolidator: generate V2HostingAlignment migration
Policy decision (recorded with user): OtOpcUa.Server + OtOpcUa.Admin are
allowed to fail-to-compile between 14b and Task 56 - only the new v2 projects
need to stay green. Task 56 deletes the legacy projects.
Plan markdown: replaces the original Task 14 section with the 6-task
decomposition + a header explaining the rewrite. Task index table at the
bottom of the plan updated.
Tasks JSON: replaces the single Task 14 row with 6 string-id rows
("14a", "14b", ..., "14f"). Task 15 (Migrate-To-V2.ps1) and downstream
consumers re-pointed at "14f".
Verification step in 14f rewritten to use the shared docker host at
10.100.0.35 per CLAUDE.md (Docker is not installed on this Mac dev VM).
2026-05-26 03:55:48 -04:00
Joseph Doherty
fac32ad69b
docs(plans): add v2 implementation plan with 66 bite-sized tasks
...
Converts the akka-hosting-alignment design into an executable plan:
12 phases covering branch/scaffold, ConfigDb schema, Commons,
Cluster, Security, ControlPlane singletons, Runtime per-node actors,
OpcUaServer extraction, AdminUI migration, Host entry point, cleanup,
integration tests, deploy scripts, and docs. Each task has files,
TDD steps, exact commands, classification, time estimate, and
parallelizable list. Co-located .tasks.json drives executing-plans
resume from any session.
2026-05-26 03:17:29 -04:00