Joseph Doherty
97d82dda46
test(runtime): future-enum trap for AccessLevel->Writable parity
2026-06-14 00:45:00 -04:00
Joseph Doherty
7e405e949b
fix(runtime): swallow self SubscriptionFailed too (symmetric to SubscriptionEstablished)
2026-06-14 00:42:31 -04:00
Joseph Doherty
42b4a923fd
fix(runtime): fast-fail writes in degraded driver states + swallow self SubscriptionEstablished
2026-06-14 00:34:37 -04:00
Joseph Doherty
99eea0b455
test(runtime): raw-blob routing test uses a no-FullName protocol blob (genuine #4d case)
2026-06-14 00:26:10 -04:00
Joseph Doherty
4cda275b8d
fix(runtime): fast-fail RouteNodeWrite while Stale + micro-opts + raw-blob routing test
2026-06-14 00:16:47 -04:00
Joseph Doherty
bb5832e900
feat(server): inbound operator-write pipeline — OnWriteValue authz gate + node-write router
2026-06-13 12:35:15 -04:00
Joseph Doherty
a23fb2b82e
feat(server): equipment-tag node writability from Tag.AccessLevel (parity-safe, no migration)
2026-06-13 11:46:00 -04:00
Joseph Doherty
f8f1027287
feat(runtime): NodeId->driver reverse routing + primary-gated RouteNodeWrite
2026-06-13 11:44:26 -04:00
Joseph Doherty
c4435e4fd6
feat(runtime): route driver values to folder-scoped equipment NodeIds (live-value delivery)
v2-ci / build (push) Failing after 44s
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 (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (push) Has been skipped
2026-06-13 06:32:38 -04:00
Joseph Doherty
5432d8a021
refactor(opcua): repoint Phase7Applier + VirtualTagHostActor to shared EquipmentNodeIds
2026-06-13 06:31:44 -04:00
Joseph Doherty
da1accceff
feat(runtime): carry DriverInstanceId on AttributeValuePublished (live-value routing key)
2026-06-13 06:27:52 -04:00
Joseph Doherty
c3c5617266
docs(test): neutralize last stale 'SystemPlatform tags' comment (final-review nit)
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 (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (push) Has been skipped
2026-06-12 22:44:10 -04:00
Joseph Doherty
7d25480fee
docs(galaxy): neutralize remaining stale SystemPlatform/alias terminology in comments + a test name
...
Replace "SystemPlatform mirror tag", "Galaxy alias", and "SystemPlatform-kind" in doc-comments and
test names with neutral accurate wording ("FolderPath-scoped tag", "EquipmentId == null", etc.).
No code, logic, or test bodies changed — comments and one test method name only.
2026-06-12 22:30:50 -04:00
Joseph Doherty
dcbaf63ab1
feat(config): remove the SystemPlatform NamespaceKind (capstone) — Galaxy is Equipment-kind
2026-06-12 22:18:56 -04:00
Joseph Doherty
0945f19a50
feat(adminui): wire Galaxy live-browse picker into the standard TagModal
2026-06-12 22:09:22 -04:00
Joseph Doherty
056bfbda1b
test(opcua): composer↔artifact byte-parity for a Galaxy equipment tag
2026-06-12 22:05:15 -04:00
Joseph Doherty
95be607a07
feat(opcua): remove SystemPlatform-mirror GalaxyTags contract end-to-end (composer+applier+artifact, byte-parity)
2026-06-12 21:45:19 -04:00
Joseph Doherty
5dfb797817
refactor(adminui): strip alias/relay machinery from UnsTreeService + EquipmentPage; Galaxy tags use standard TagModal
2026-06-12 21:28:13 -04:00
Joseph Doherty
e2c6c15ae0
feat(opcua): remove SystemPlatform mirror producer + Galaxy exception from Phase7Composer
2026-06-12 21:17:39 -04:00
Joseph Doherty
fcf84adbad
fix(historian-client): cancellable TLS client handshake + default-fields test (review)
2026-06-12 12:13:04 -04:00
Joseph Doherty
d4ecc9138f
feat(adminui): historian TCP-connect probe + TLS form fields
2026-06-12 12:07:06 -04:00
Joseph Doherty
72f32045a4
refactor(historian): remove named-pipe transport
2026-06-12 11:51:53 -04:00
Joseph Doherty
7ce7505a36
feat(historian-host): bind TCP host/port/tls config
2026-06-12 11:19:46 -04:00
Joseph Doherty
57355405a6
chore(security): drop dead audit suppressions; patch OpenTelemetry + Tmds.DBus CVEs
...
All five suppressed advisories are now resolved at baseline/resolved versions,
so every NuGetAuditSuppress is removed repo-wide:
- System.Security.Cryptography.Xml (GHSA-37gx-xxp4-5rgx / GHSA-w3x6-4m5h-cxqf)
-> fixed by the .NET 10 baseline (10.0.6)
- OPCFoundation Opc.Ua.Core (GHSA-h958-fxgg-g7w3) -> fixed at resolved 1.5.378.106
Two were still live and are now patched via direct security pins:
- OpenTelemetry.Api 1.9.0 -> 1.15.3 (GHSA-g94r-2vxg-569j) pinned in Cluster;
Runtime/ControlPlane/AdminUI + tests inherit via project reference
- Tmds.DBus.Protocol 0.20.0 -> 0.21.3 (GHSA-xrw6-gwf8-vvr9) pinned in Client.UI
Also correct the Historian sidecar runtime comments (x86 -> x64, matching the
csproj PlatformTarget). Solution audit: 0 vulnerable packages; full build clean.
2026-06-12 09:03:42 -04:00
Joseph Doherty
d19271fff8
fix(adminui): converter skips name-collisions + disabled relays (review)
2026-06-11 21:44:19 -04:00
Joseph Doherty
943bc5f709
feat(adminui): ConvertRelayVirtualTagsToAliasesAsync (relay VTag -> alias Tag)
2026-06-11 21:32:43 -04:00
Joseph Doherty
fe068652b3
fix(adminui): alias update pins invariants + LoadAliasTagAsync + null-driver guard (review)
2026-06-11 21:25:06 -04:00
Joseph Doherty
53116bdd83
feat(adminui): CreateAliasTagAsync/UpdateAliasTagAsync + Galaxy-gateway guard
2026-06-11 21:17:45 -04:00
Joseph Doherty
fcc73ccd2d
fix(adminui): null Source for alias rows without a FullName (review nits)
2026-06-11 21:12:52 -04:00
Joseph Doherty
bc9e83ed9f
feat(composer): admit GalaxyMxGateway-backed equipment alias tags (+byte-parity)
2026-06-11 21:10:21 -04:00
Joseph Doherty
4b4738a891
feat(adminui): alias DTO + Galaxy gateway lookup + Source/IsAlias on tag rows
2026-06-11 21:05:02 -04:00
Joseph Doherty
80b19d6fc8
chore(uns): create-redirect null guard + alarm isolation test + alarm-authoring doc (final review)
2026-06-11 15:23:06 -04:00
Joseph Doherty
f1c4392b0d
refactor(uns): drop dead LoadEquipmentChildrenAsync + LinesForCluster; fix stale comment
2026-06-11 15:11:28 -04:00
Joseph Doherty
826ffdc1a0
feat(uns): equipment is a tree leaf linking to the detail page; drop EquipmentModal
2026-06-11 15:01:10 -04:00
Joseph Doherty
7fbfeca451
feat(uns): equipment detail page shell + Details tab + create-redirect
2026-06-11 14:36:48 -04:00
Joseph Doherty
5cae3c5b96
fix(uns): guard scripted-alarm name uniqueness on create/update (code-review)
2026-06-11 14:31:35 -04:00
Joseph Doherty
705ed6234f
feat(uns): scripted-alarm CRUD in IUnsTreeService for the equipment Alarms tab
2026-06-11 14:25:59 -04:00
Joseph Doherty
7c22861598
feat(uns): per-equipment tag/virtual-tag list service methods
2026-06-11 14:19:46 -04:00
Joseph Doherty
7d91737dac
feat(uns): carry created id on UnsMutationResult for equipment create
2026-06-11 14:16:21 -04:00
Joseph Doherty
7f535c0e9d
test(historian): cover non-positive DeadLetterRetentionDays validation warning
2026-06-11 13:24:46 -04:00
Joseph Doherty
56750e110f
fix(alarms): historize the real operator for shelve/unshelve/enable/disable transitions
2026-06-11 13:14:00 -04:00
Joseph Doherty
5ea6e9d7d9
fix(historian): validate non-positive drain/capacity/retention knobs (review) + log prefix
2026-06-11 13:09:13 -04:00
Joseph Doherty
f215982b93
feat(historian): drain/capacity/retention config knobs + startup config-warning validation
2026-06-11 13:04:16 -04:00
Joseph Doherty
61b230d79a
harden(historian): nullable HistorizeToAveva (missing→historize) for rolling-restart-safe deserialize + middle-link test
2026-06-11 13:00:57 -04:00
Joseph Doherty
8012509584
feat(historian): honor per-alarm HistorizeToAveva opt-out at the durable write
2026-06-11 12:48:13 -04:00
Joseph Doherty
f64f7ce669
fix(alarms): historize the operator (not 'system') for CommentAdded transitions (review)
v2-ci / build (push) Failing after 50s
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 (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (push) Has been skipped
2026-06-11 11:42:56 -04:00
Joseph Doherty
943c621371
feat(historian): config-gated SqliteStoreAndForward→Wonderware sink (AddAlarmHistorian)
2026-06-11 11:30:31 -04:00
Joseph Doherty
e9355e9514
refactor(historian): gate before translate (no discarded alloc on secondary) + strengthen double-write warning (review)
2026-06-11 11:24:48 -04:00
Joseph Doherty
bb42e5834a
feat(historian): subscribe to alerts topic + translate to AlarmHistorianEvent (Primary-gated, exactly-once)
2026-06-11 11:18:26 -04:00
Joseph Doherty
8ac3ac5be9
feat(alarms): carry AlarmTypeName + operator Comment on AlarmTransitionEvent (historian feed prep)
2026-06-11 11:03:00 -04:00