This website requires JavaScript.
c6f17557f6
docs: forced-subtag mode fix plan
Joseph Doherty
2026-06-15 01:04:46 -04:00
bbbef4d098
D2: document no current duplicate / endpoint (no-op)
Joseph Doherty
2026-06-14 23:49:47 -04:00
4af24b9518
D1: surface AlarmProviderSwitchCount on dashboard metric list
Joseph Doherty
2026-06-14 23:49:02 -04:00
371ce53409
docs: add deferred follow-ups plan (D1-D5)
Joseph Doherty
2026-06-14 23:46:21 -04:00
597677025f
Merge alarm-fallback cleanup: metrics snapshot/reason, SQL prune, teardown, doc drift
Joseph Doherty
2026-06-14 02:39:10 -04:00
393e326275
docs(alarms): note operator/IDE toggle drives the live subtag smoke test
Joseph Doherty
2026-06-14 02:35:59 -04:00
986dcee14a
worker(alarms): UnAdvise only advised handles in LmxSubtagAlarmSource teardown
Joseph Doherty
2026-06-14 02:35:59 -04:00
a3752799de
worker(alarms): remove dead FailoverAlarmConsumer.subscriptionExpression
Joseph Doherty
2026-06-14 02:35:59 -04:00
37aadf72b3
docs(alarms): clarify resolver cancellation contract; mark design doc superseded
Joseph Doherty
2026-06-14 02:33:14 -04:00
5573f2a229
galaxy(alarms): drop dead primitive branch from AlarmAttributesSql
Joseph Doherty
2026-06-14 02:33:14 -04:00
56abd64c6c
metrics(alarms): expose provider-switch count in snapshot, bound the reason tag
Joseph Doherty
2026-06-14 02:33:02 -04:00
5b31e99ab6
alarms: compose subtag reference from object's real Galaxy area for exact alarmmgr parity
Joseph Doherty
2026-06-14 02:12:11 -04:00
64db828d71
docs(alarms): record live confirmation of subtag path + ack; advise-before-write requirement
Joseph Doherty
2026-06-13 11:26:08 -04:00
1a9367b5de
worker(alarms): advise ack-comment subtag so the ack write targets an active MXAccess item
Joseph Doherty
2026-06-13 11:23:39 -04:00
98e997b573
test(alarms): probe writes evidence log to PROBE_LOG file
Joseph Doherty
2026-06-13 11:15:05 -04:00
0e8d911fd8
test(alarms): live runtime-path resolution probe (LiveMxAccessFact) for alarm subtags
Joseph Doherty
2026-06-13 11:14:12 -04:00
e72763d703
alarms: use confirmed AVEVA AlarmExtension subtag names (InAlarm/Acked/AckMsg/Priority)
Joseph Doherty
2026-06-13 11:07:22 -04:00
3c9becc8d6
docs(plan): mark all alarm-subtag-fallback tasks completed
Joseph Doherty
2026-06-13 10:55:18 -04:00
ec88532fe4
alarms: propagate degraded/source_provider through snapshot + gateway cache paths (integration fix I1/I2)
Joseph Doherty
2026-06-13 10:53:55 -04:00
2f30f0c7c0
docs(alarms): document alarmmgr->subtag fallback (providers, failover, config, contract, parity)
Joseph Doherty
2026-06-13 10:43:37 -04:00
27f6c9e6b7
dashboard(alarms): provider-status badge (alarmmgr vs degraded subtag)
Joseph Doherty
2026-06-13 10:37:37 -04:00
29bd504a99
test(alarms): end-to-end provider failover/failback lifecycle through GatewayAlarmMonitor
Joseph Doherty
2026-06-13 10:34:24 -04:00
e10b252e3a
test(alarms): drop unsupported Assert.Equal message args in live subtag smoke test (xUnit)
Joseph Doherty
2026-06-13 10:30:39 -04:00
bcc54ca56b
server(alarms): provider-mode gauge startup baseline; reconcile-lock comment; de-flake monitor test
Joseph Doherty
2026-06-13 10:29:13 -04:00
ee459f43e1
test(alarms): opt-in live subtag-fallback smoke test (Skip by default)
Joseph Doherty
2026-06-13 10:26:28 -04:00
ebf1d95f72
server(alarms): monitor resolves watch-list, sends ForcedMode/failover, reflects provider mode into feed + metrics
Joseph Doherty
2026-06-13 10:20:03 -04:00
3ccf0b5f9e
server(alarms): honor ExcludeAttributes GR-only contract; warn on empty config-only watch-list
Joseph Doherty
2026-06-13 10:12:58 -04:00
f7ccfd678e
server(alarms): watch-list resolver merging GR discovery + config override
Joseph Doherty
2026-06-13 10:09:10 -04:00
3f5e5fc0b3
worker(alarms): route ForcedMode/watch-list/failover via AlarmCommandHandler; emit provider-mode-changed event
Joseph Doherty
2026-06-13 10:04:33 -04:00
7241a4fb9c
worker(alarms): net48 index fix; enforce ProbeIntervalSeconds; OOM-safe catch; reset-on-failure test
Joseph Doherty
2026-06-13 09:55:07 -04:00
d6c0bb41ca
worker(alarms): failback probe re-polls the still-subscribed primary (no re-Subscribe)
Joseph Doherty
2026-06-13 09:49:38 -04:00
0a54c0bc4b
worker(alarms): FailoverAlarmConsumer auto-failover/failback state machine
Joseph Doherty
2026-06-13 09:46:47 -04:00
fd64b9260c
worker(alarms): exact-match ack resolution (no substring false-match) + ack-by-guid tests
Joseph Doherty
2026-06-13 09:42:00 -04:00
4bd757a136
worker(alarms): SubtagAlarmConsumer synthesizing degraded transitions; dispatcher propagates Degraded
Joseph Doherty
2026-06-13 09:35:49 -04:00
1e2ed6d1ea
worker(alarms): WriteRecord as class not positional record (net48 has no IsExternalInit)
Joseph Doherty
2026-06-13 09:30:52 -04:00
5f6655de27
server(alarms): drop redundant null-coalesce; tidy validator tests (review fixes)
Joseph Doherty
2026-06-13 09:27:37 -04:00
fbc9cf56df
worker(alarms): SyntheticAlarmGuid internal + alarmmgr-parity assertion (review fixes)
Joseph Doherty
2026-06-13 09:26:52 -04:00
4c0e14fc5d
worker(alarms): COM-backed LmxSubtagAlarmSource advising alarm subtags
Joseph Doherty
2026-06-13 09:24:09 -04:00
c75920c620
docs(plan): correct alarm proto location to mxaccess_gateway.proto (Tasks 1-2)
Joseph Doherty
2026-06-13 09:18:11 -04:00
a46ce90e6f
server(metrics): alarm provider mode gauge + provider switch counter (Task 13)
Joseph Doherty
2026-06-13 09:18:11 -04:00
f113ca53a1
server(galaxy): GetAlarmAttributesAsync discovery query + alarm-attribute row mapping (Task 11)
Joseph Doherty
2026-06-13 09:18:11 -04:00
f3616cc7fa
server(alarms): AlarmFallbackOptions + ForceSubtag/threshold validation (Task 10)
Joseph Doherty
2026-06-13 09:18:11 -04:00
57d5a8725f
worker(alarms): synthetic GUID + degraded/source_provider on emitted transitions
Joseph Doherty
2026-06-13 09:14:23 -04:00
60d35a914f
contracts: regenerate Generated/ for alarm provider mode + subtag types
Joseph Doherty
2026-06-13 09:10:08 -04:00
b10e103bcf
worker(alarms): fix net48 build (init->set, usings), token-boundary name parse, acked latch, dup-address guard, tests
Joseph Doherty
2026-06-13 09:05:58 -04:00
348ab16456
worker(alarms): subtag value-source seam + synthesis state machine
Joseph Doherty
2026-06-13 08:57:28 -04:00
c16f016f0a
test(contracts): round-trip provider status + degraded provenance
Joseph Doherty
2026-06-13 08:56:13 -04:00
1d85db7b4e
contracts(gateway): AlarmProviderMode, subtag watch-list, provider status, degraded provenance, mode-changed event
Joseph Doherty
2026-06-13 08:53:02 -04:00
5ea5618315
docs: implementation plan for alarm subtag-monitoring fallback
Joseph Doherty
2026-06-13 08:44:42 -04:00
38a0ad8ab4
docs: design for alarmmgr→subtag alarm-provider fallback
Joseph Doherty
2026-06-13 08:35:18 -04:00
5df2ef0d1e
chore(theme): bump ZB.MOM.WW.Theme 0.3.0 -> 0.3.1 (interactive-render nav fix)
Joseph Doherty
2026-06-05 07:19:11 -04:00
e5785fd769
chore(theme): consume ZB.MOM.WW.Theme 0.3.0 (nav/login kit fixes)
Joseph Doherty
2026-06-05 05:13:06 -04:00
22370ca4da
docs(glauth): repoint glauth.md at the shared GLAuth on 10.100.0.35
Joseph Doherty
2026-06-04 16:38:24 -04:00
e0a3fbf35b
fix(dashboard)!: move login POST to /auth/login to resolve AmbiguousMatchException
Joseph Doherty
2026-06-04 14:01:05 -04:00
161ed6f80d
chore(theme): bump ZB.MOM.WW.Theme 0.2.0 -> 0.2.1 (desktop app-shell render fix)
Joseph Doherty
2026-06-04 10:23:44 -04:00
6ed0468588
fix(fixtures): correct Java Gradle task name in cross-language smoke matrix
docs/prose-audit
Joseph Doherty
2026-06-03 16:24:24 -04:00
328d662315
docs(audit): finalize report — resolution status (0 still-open, 33/33 high resolved)
Joseph Doherty
2026-06-03 16:09:02 -04:00
e541339c07
docs(audit): apply per-cluster judgment fixes across living docs
Joseph Doherty
2026-06-03 16:01:28 -04:00
f84e0c3474
docs(audit): apply global term/path substitutions across living docs
Joseph Doherty
2026-06-03 15:50:13 -04:00
a60c1e3f66
docs(audit): findings report + global-substitutions table (186 findings, 33 high)
Joseph Doherty
2026-06-03 15:42:07 -04:00
3081b80efc
docs(audit): cluster findings fragments (13 clusters, read-only verification)
Joseph Doherty
2026-06-03 15:35:46 -04:00
117936e6fd
docs(audit): scaffold prose-audit workspace
Joseph Doherty
2026-06-03 15:24:05 -04:00
c47b9d7b02
docs: add documentation-audit implementation plan (24 tasks, 13-cluster fan-out)
Joseph Doherty
2026-06-03 14:00:47 -04:00
327493f077
docs: add documentation-audit design (claim-by-claim accuracy + completeness)
Joseph Doherty
2026-06-03 13:56:12 -04:00
e57d864ab2
fix(dashboard): make dashboard auth cookie name configurable
Joseph Doherty
2026-06-03 13:08:21 -04:00
a1156960b9
docs: add missing XML doc comments across gateway, worker, and .NET client
docs/xml-doc-comments
Joseph Doherty
2026-06-03 12:33:53 -04:00
5539ec8542
chore(dashboard): prune dead sidebar + orphaned login CSS from site.css
Joseph Doherty
2026-06-03 04:37:23 -04:00
73e54e252d
feat(dashboard): Blazor LoginCard page reusing the hardened /login endpoint
Joseph Doherty
2026-06-03 03:56:51 -04:00
70d959bd9b
refactor(dashboard): StatusBadge delegates to ZB.MOM.WW.Theme StatusPill
Joseph Doherty
2026-06-03 03:51:45 -04:00
0c5b796e2e
feat(dashboard): split MainLayout into ZB.MOM.WW.Theme ThemeShell + kit nav
Joseph Doherty
2026-06-03 03:49:34 -04:00
47dc9d865f
refactor(dashboard): drop vendored theme.css/fonts/nav-state.js; keep app-only CSS in site.css
Joseph Doherty
2026-06-03 03:46:37 -04:00
4f757e3c0c
feat(dashboard): use ZB.MOM.WW.Theme ThemeHead + ThemeScripts
Joseph Doherty
2026-06-03 03:44:18 -04:00
2f0ee4c961
build(server): reference ZB.MOM.WW.Theme 0.2.0
Joseph Doherty
2026-06-03 03:43:06 -04:00
0859d47f75
feat(audit): MxGateway IAuditActorAccessor + dashboard audit Actor = operator principal (keyId→Target) (Phase 3)
Joseph Doherty
2026-06-02 15:25:39 -04:00
7ea8358c06
feat(audit): MxGateway local producers (dashboard + constraint-denial) emit canonical AuditEvent with Target/CorrelationId (Task 2.3 #6 )
Joseph Doherty
2026-06-02 10:13:54 -04:00
a5944bbe5d
feat(audit): MxGateway canonical SQLite audit_event store + IAuditWriter + IApiKeyAuditStore->canonical adapter (Task 2.3)
Joseph Doherty
2026-06-02 10:10:38 -04:00
04bce3ff9f
feat(auth)!: MxGateway canonical dashboard roles — Admin→Administrator (Task 1.7)
Joseph Doherty
2026-06-02 07:22:42 -04:00
9572045787
chore(auth): MxGateway unify dev LDAP base DN to dc=zb,dc=local (Task 1.6)
Joseph Doherty
2026-06-02 06:44:38 -04:00
7e1af37eb1
feat(auth): MxGateway dashboard adopt ZbClaimTypes + ZbCookieDefaults, keep cookie name (Task 1.5)
Joseph Doherty
2026-06-02 06:10:48 -04:00
05009d7370
feat(auth): cut MxGateway API keys over to ZB.MOM.WW.Auth.ApiKeys 0.1.2; keep constraint enforcement+gRPC+CLI on top (Task 1.3)
Joseph Doherty
2026-06-02 02:08:38 -04:00
f4dc11bae4
fix(auth): MxGateway 1.2 review fixes — group-claim doc, dedup LdapOptions, 0.1.1 pin
Joseph Doherty
2026-06-02 01:28:57 -04:00
c3b466e13d
feat(auth): cut MxGateway dashboard LDAP over to ZB.MOM.WW.Auth.Ldap; roles via IGroupRoleMapper (Task 1.2/1.4)
Joseph Doherty
2026-06-02 00:51:10 -04:00
792e3f9445
feat(auth): add IGroupRoleMapper<string> seam (Task 1.1)
Joseph Doherty
2026-06-02 00:31:00 -04:00
ae281d06bb
build: add ZB.MOM.WW.Auth/Audit feed mapping
Joseph Doherty
2026-06-02 00:17:10 -04:00
3ca2799c90
fix: tighten MxGateway Ldap:Port to 1-65535; catch IOException in path validation
Joseph Doherty
2026-06-01 22:45:16 -04:00
459a88b3e7
refactor: adopt ZB.MOM.WW.Configuration in MxGateway (behaviour-preserving)
Joseph Doherty
2026-06-01 18:22:21 -04:00
437ab65fc1
build: add ZB.MOM.WW.Configuration feed mapping + version pin
Joseph Doherty
2026-06-01 18:10:27 -04:00
679562e5ed
Merge feat/telemetry-followons: telemetry follow-ons for MxAccessGateway
Joseph Doherty
2026-06-01 17:17:31 -04:00
dbf550da8b
docs(mxgateway): sync Metrics.md to renamed meter + seconds histogram units
Joseph Doherty
2026-06-01 16:48:46 -04:00
3965a7741e
feat(mxgateway): config-driven OTLP exporter opt-in (default Prometheus)
Joseph Doherty
2026-06-01 16:44:40 -04:00
abb2cfb84b
feat(mxgateway): normalize metrics — meter ZB.MOM.WW.MxGateway + histograms in seconds
Joseph Doherty
2026-06-01 16:39:56 -04:00
4e0d8ccfed
chore(mxgateway): gitignore CommentChecker doc-review artifacts
Joseph Doherty
2026-06-01 16:34:46 -04:00
a935aa8b7c
Merge feat/adopt-zb-telemetry: adopt ZB.MOM.WW.Telemetry across MxAccessGateway
Joseph Doherty
2026-06-01 16:05:41 -04:00
9912389fa1
feat(mxgateway): export GatewayMetrics via AddZbTelemetry + /metrics (name/units unchanged)
Joseph Doherty
2026-06-01 15:53:46 -04:00
f1129b969d
feat(mxgateway): expose GatewayLogRedactor via shared ILogRedactor seam
Joseph Doherty
2026-06-01 15:49:32 -04:00
c51b6f9ce4
feat(mxgateway): adopt AddZbSerilog — MEL→Serilog provider swap (behaviour-preserving)
Joseph Doherty
2026-06-01 15:43:10 -04:00
e39972357b
config(mxgateway): translate MEL Logging section to Serilog
Joseph Doherty
2026-06-01 15:32:38 -04:00
9ad17e2964
build(mxgateway): reference ZB.MOM.WW.Telemetry + Serilog packages
Joseph Doherty
2026-06-01 15:29:43 -04:00
ef0a883a81
Merge feat/adopt-zb-health: ZB.MOM.WW.Health adoption + TLS auto-cert/lenient-client-trust feature
Joseph Doherty
2026-06-01 14:09:24 -04:00
62ba5e9487
feat: map canonical ZB health tiers; replace bypassing /health/live
Joseph Doherty
2026-06-01 13:44:13 -04:00