Commit Graph

  • 314c7dea23 feat(m9/T23b): folder reorder menu items + root context menu Joseph Doherty 2026-06-18 11:12:34 -04:00
  • efe3ada03d feat(m9/T25): connection live-status indicators on the design page Joseph Doherty 2026-06-18 11:03:22 -04:00
  • e3bc19c673 feat(m9/T23a): folder sibling reorder (ReorderFolderAsync + command + handler) Joseph Doherty 2026-06-18 11:00:57 -04:00
  • 0bd5e0986f fix(m9/T28b): forward --trigger-kind on alarm-update/script-add/script-update; fix default-selector test Joseph Doherty 2026-06-18 10:54:42 -04:00
  • ea69178dd9 fix(m9): CLI cached-call retry/discard propagate exit code (Task<int> overload) Joseph Doherty 2026-06-18 10:48:27 -04:00
  • 0c1ba943cf fix(m9/T22): btn-sm on search clear button (input-group-sm alignment) Joseph Doherty 2026-06-18 10:46:25 -04:00
  • dcc6f623e2 feat(m9/T28b): trigger analysis-kind selector (UI) + --trigger-kind (CLI) Joseph Doherty 2026-06-18 10:44:57 -04:00
  • f618ac0322 feat(m9/T22): template tree search box (wire TemplateFolderTree.Filter) Joseph Doherty 2026-06-18 10:35:35 -04:00
  • efcdd18794 feat(m9): CLI cached-call retry/discard command group Joseph Doherty 2026-06-18 10:13:56 -04:00
  • 0f04afbdf1 feat(m9/T28a): strict expression-trigger analysis kind (advisory default, strict escalates) Joseph Doherty 2026-06-18 10:13:12 -04:00
  • 939aea159b docs(m9): implementation plan + task persistence (17 tasks, 5 waves) Joseph Doherty 2026-06-18 10:08:57 -04:00
  • 4b152958df docs(m9): approved design — Templates & authoring (T22-T26, T28, T30-T32 + CLI cached-call retry/discard) Joseph Doherty 2026-06-18 10:01:38 -04:00
  • 72aec3b4d4 fix(dcl): robust static-tag seeding — bounded-retry+log initial seed (#1) and re-seed on reconnect (#3) Joseph Doherty 2026-06-18 09:23:23 -04:00
  • 3782ebdadb fix(transport): skip unbound (empty ConnectionName) bindings on import instead of writing FK=0 (M8 INT review) Joseph Doherty 2026-06-18 07:56:00 -04:00
  • 4d888c63a3 docs(m8): Transport site/instance transport, name-mapping, Myers diff, stale enumeration (M8 INT) Joseph Doherty 2026-06-18 07:53:25 -04:00
  • f881521cc9 fix(transport-ui): reset connection choices on site change + clear state on back (M8 E2 review) Joseph Doherty 2026-06-18 07:39:19 -04:00
  • d45a7a5760 fix(transport): real stale-instance enumeration in ImportResult (M8 D2, #16) + native-alarm rename-redirect test Joseph Doherty 2026-06-18 07:35:08 -04:00
  • c8211f6363 feat(transport-ui): import Map step + per-line diff view (M8 E2) Joseph Doherty 2026-06-18 07:21:23 -04:00
  • e67587ec93 fix(transport-ui): use DataConnection ctor in CountSecrets tests (M8 build fix) Joseph Doherty 2026-06-18 07:11:41 -04:00
  • 565d53d0fe feat(transport): import name-map plumbing via CLI + ManagementActor (M8 D3) Joseph Doherty 2026-06-18 07:08:33 -04:00
  • d974477e87 fix(transport): connection map Pass-2 (FK) + site-qualified connection resolution (M8 D1-FIX, C1+C2) Joseph Doherty 2026-06-18 07:08:31 -04:00
  • 6457f03fae feat(transport): apply site/instance import with name-map + FK rewire (M8 D1, T18) Joseph Doherty 2026-06-18 06:52:40 -04:00
  • 542a3e92eb fix(transport-ui): count site data-connection config in export secret banner (M8, C2-SECRET-1) Joseph Doherty 2026-06-18 06:37:38 -04:00
  • 50d77b07cf feat(transport): preview diff + required-mapping detection + blockers (M8 C2) Joseph Doherty 2026-06-18 06:28:47 -04:00
  • d0b38ad726 feat(transport-ui): export wizard site/instance selection (M8 E1) Joseph Doherty 2026-06-18 06:26:36 -04:00
  • bdbf5cdab0 feat(transport): export site/instance selection end-to-end via CLI + ManagementActor (M8 B4) Joseph Doherty 2026-06-18 06:14:39 -04:00
  • d7dae24355 feat(transport): per-line Myers code diff + site/connection/instance compare (M8 C1, T20) Joseph Doherty 2026-06-18 06:07:04 -04:00
  • 7e5b1b0275 feat(transport): resolve site/instance export selection + deps (M8 B1) Joseph Doherty 2026-06-18 05:55:56 -04:00
  • bb6e883758 feat(transport): serialize site/connection/instance entities<->DTOs (M8 B2) Joseph Doherty 2026-06-18 05:54:17 -04:00
  • aefdb9f4b6 feat(transport): manifest summary counts + schemaVersion 1.1 (M8 B3) Joseph Doherty 2026-06-18 05:52:12 -04:00
  • 0e507052a1 feat(transport): site/connection/instance bundle DTOs (M8 A2) Joseph Doherty 2026-06-18 05:42:24 -04:00
  • c1282e06a2 feat(transport): pure Myers LineDiffer helper (M8 A3, T20) Joseph Doherty 2026-06-18 05:41:10 -04:00
  • 4f1925870f feat(transport): name-map types + preview/selection/summary extensions (M8 A1) Joseph Doherty 2026-06-18 05:40:24 -04:00
  • 2f3c1a4e64 chore(m8): task persistence for Transport plan (15 tasks, dependency DAG) Joseph Doherty 2026-06-18 05:31:01 -04:00
  • 1ee75ac620 docs(m8): Transport T18/T20/#16 implementation plan (15 tasks, waves A-E + INT) Joseph Doherty 2026-06-18 05:29:39 -04:00
  • e4964f7b30 docs(m8): approved Transport T18/T20 + #16 design (site/instance transport, name-mapping, Myers diff) Joseph Doherty 2026-06-18 05:25:04 -04:00
  • 0c7774acdc fix(mgmt): re-assert MxGateway protocol at secured-write execute (D2 TOCTOU guard, T14b) Joseph Doherty 2026-06-18 04:24:53 -04:00
  • 40928535fd docs(m7): reflect OPC UA / MxGateway UX (T13-T17) across component docs + CLAUDE/stillpending/completion-design Joseph Doherty 2026-06-18 04:13:21 -04:00
  • 39afa2743e fix(comm): route Search/Verify/WriteTag commands through SiteCommunicationActor + DeploymentManager (M7 end-to-end) Joseph Doherty 2026-06-18 03:59:35 -04:00
  • 384204b71a feat(centralui): cert-management UI + Trust action + site relay (T17) Joseph Doherty 2026-06-18 03:53:32 -04:00
  • 2d139442ba fix(siteruntime): CertStoreActor — dispose listed certs + reject path-traversal thumbprints (T17) Joseph Doherty 2026-06-18 03:42:17 -04:00
  • a56805e681 test(centralui): register IEndpointVerificationService in OpcUaEndpointEditor/DataConnectionForm fixtures broken by B8 verify-button (T17) Joseph Doherty 2026-06-18 03:38:43 -04:00
  • 1a7e735149 feat(centralui): Secured Writes page — operator submit + verifier queue + history (T14b) Joseph Doherty 2026-06-18 03:34:08 -04:00
  • b08bfae329 feat(audit): SecuredWrite audit kinds + best-effort per-lifecycle central direct-write; guard approve Decode (T14b) Joseph Doherty 2026-06-18 03:17:56 -04:00
  • c8d9303031 feat(siteruntime): per-node CertStore actor + trust broadcast to both site nodes (T17) Joseph Doherty 2026-06-18 03:13:48 -04:00
  • 303385fd98 feat(centralui): Verify-endpoint button + result/cert panel (T17) Joseph Doherty 2026-06-18 03:12:11 -04:00
  • 45a5a92455 fix(centralui): NodeBrowserDialog — reset load/expand spinner on error + clear stale failure on blank search (T15) Joseph Doherty 2026-06-18 03:05:23 -04:00
  • 733c7bf66c feat(dcl): OPC UA verify-endpoint probe with untrusted-cert capture (T17) Joseph Doherty 2026-06-18 03:00:55 -04:00
  • 90abb4b8e2 feat(centralui): NodeBrowserDialog search + load-more + type column (T15/T16) Joseph Doherty 2026-06-18 03:00:16 -04:00
  • 1f7bb7ace3 feat(mgmt): secured-write approve relays to site MxGateway write with CAS race guard (T14b) Joseph Doherty 2026-06-18 02:59:43 -04:00
  • 74dd26eebd feat: OPC UA address-space search plumbing — actor + comm + BrowseService (T15) Joseph Doherty 2026-06-18 02:51:57 -04:00
  • c00c8241b3 feat(dcl): bounded recursive OPC UA address-space search adapter (T15) Joseph Doherty 2026-06-18 02:45:01 -04:00
  • 9ec2450ad5 feat: thread BrowseNext continuation token through actor + BrowseService (T15) Joseph Doherty 2026-06-18 02:43:25 -04:00
  • d5e7e897c0 feat(centralui): InstanceConfigure CSV bulk override import (T16) Joseph Doherty 2026-06-18 02:30:33 -04:00
  • 25c9240415 feat(mgmt): secured-write submit/reject/list handlers + Operator/Verifier gating (T14b) Joseph Doherty 2026-06-18 02:29:29 -04:00
  • 586d54359c feat(cli): instance import-overrides --file (T16) Joseph Doherty 2026-06-18 02:27:40 -04:00
  • 2cfe0de927 feat(dcl): BrowseNext continuation paging + StubOpcUaClient canned browse (T15) Joseph Doherty 2026-06-18 02:21:59 -04:00
  • 3c9122bc07 feat(centralui): operator Alarm Summary page + per-instance snapshot fan-out (T13) Joseph Doherty 2026-06-18 02:21:41 -04:00
  • 6a6f8949b9 fix(commons): OverrideCsvParser — preserve literal mid-field quotes, error on unterminated quoted field (T16 CSV) Joseph Doherty 2026-06-18 02:13:10 -04:00
  • c799f41d53 feat(db): PendingSecuredWrite entity + migration + repository (T14b) Joseph Doherty 2026-06-18 02:09:31 -04:00
  • a0ce8b6c44 feat(security): add Operator + Verifier roles + policies + LDAP mapping options (T14a) Joseph Doherty 2026-06-18 02:07:01 -04:00
  • 5fd77c7155 feat(dcl): surface OPC UA DataType/ValueRank/Writable on BrowseNode (T16 type-info) Joseph Doherty 2026-06-18 02:02:23 -04:00
  • bf1f2f6892 feat(centralui): extract AlarmStateBadges shared component from DebugView (T13) Joseph Doherty 2026-06-18 02:02:09 -04:00
  • 77a31ba994 feat(commons): quote-aware OverrideCsvParser (T16 CSV) Joseph Doherty 2026-06-18 02:01:38 -04:00
  • a87bf8a459 docs(m7): implementation plan + task graph — 22 tasks across waves A-E (T13-T17) Joseph Doherty 2026-06-18 01:57:18 -04:00
  • 254e0e729f docs(m7): approved design — OPC UA / MxGateway UX (T13-T17) Joseph Doherty 2026-06-18 01:44:40 -04:00
  • 241a792e7b docs(kpi): K17 — #26 KpiHistory component doc + README/CLAUDE + cross-component interactions + completion-design update Joseph Doherty 2026-06-17 20:52:12 -04:00
  • 3f1f4ed7c6 test(kpi): K17 — Playwright KPI trend-chart spec (tolerant, SkippableFact) Joseph Doherty 2026-06-17 20:50:23 -04:00
  • eb4bce3e49 refactor(kpi): K13/K15 trend review fixups — per-metric isolation, disable-during-load + logging, loading-flag finally, test coverage Joseph Doherty 2026-06-17 20:44:34 -04:00
  • 7d7c6cbb05 feat(kpi): K16 — Health dashboard per-site trend panel Joseph Doherty 2026-06-17 20:36:09 -04:00
  • 3595a41349 feat(kpi): K15 — Audit Log trend charts Joseph Doherty 2026-06-17 20:30:38 -04:00
  • 4a88355098 feat(kpi): K14 — Site Calls trend charts Joseph Doherty 2026-06-17 20:30:36 -04:00
  • 0dc819f191 feat(kpi): K13 — Notification Outbox trend charts (T11 first consumer) Joseph Doherty 2026-06-17 20:29:30 -04:00
  • f0177d5073 feat(kpi): K11 — KpiHistoryQueryService (scoped read + bucketing) Joseph Doherty 2026-06-17 20:21:17 -04:00
  • e14433cd64 feat(kpi): K5 — Host central wiring + KpiHistoryRecorder cluster singleton + appsettings (not readiness-gated) Joseph Doherty 2026-06-17 20:20:34 -04:00
  • 601cc6f594 feat(kpi): K9 — SiteHealth sample source (per-site, from aggregator) Joseph Doherty 2026-06-17 20:20:18 -04:00
  • cb2a516187 refactor(kpi): K4/K10/K12 review fixups — test data-race + faulted-tick liveness, dead-branch/unused removal, NaN-guard assertions, value clamp + doc Joseph Doherty 2026-06-17 20:15:47 -04:00
  • 5613a5efb7 feat(kpi): K12 — reusable KpiTrendChart SVG component Joseph Doherty 2026-06-17 20:06:31 -04:00
  • 9c2e7ab4cb feat(kpi): K4 — KpiHistoryRecorderActor (best-effort sampling + daily purge) Joseph Doherty 2026-06-17 20:06:09 -04:00
  • 76f5ed72e4 feat(kpi): K10 — KpiSeriesBucketer last-per-bucket downsampler Joseph Doherty 2026-06-17 20:04:51 -04:00
  • e6c15250ce refactor(kpi): K2/K6/K7 review fixups — empty-batch guard + sealed repo + uniform TryAddEnumerable + KPI-age doc fidelity + coverage Joseph Doherty 2026-06-17 20:00:43 -04:00
  • 456e61dff3 feat(kpi): K7 — SiteCallAudit sample source Joseph Doherty 2026-06-17 19:53:49 -04:00
  • 6f6157ce89 feat(kpi): K8 — AuditLog sample source Joseph Doherty 2026-06-17 19:53:41 -04:00
  • 0d6c026dff feat(kpi): K6 — NotificationOutbox sample source (global/site/node) Joseph Doherty 2026-06-17 19:53:39 -04:00
  • 9ffa34d3e7 feat(kpi): K3 — KpiHistory project + options/validator + AddKpiHistory Joseph Doherty 2026-06-17 19:45:07 -04:00
  • cabc557629 feat(kpi): K2 — KpiSample EF mapping + KpiHistoryRepository + AddKpiSampleTable migration Joseph Doherty 2026-06-17 19:44:51 -04:00
  • 460777bffa feat(kpi): K1 — KpiSample + IKpiSampleSource + IKpiHistoryRepository contracts (Commons) Joseph Doherty 2026-06-17 19:35:50 -04:00
  • 4c6ae9da0e docs(m6): KPI History tasks.json (K1-K17 with blockedBy graph) Joseph Doherty 2026-06-17 05:29:20 -04:00
  • 1809664bcb docs(m6): KPI History & Trends implementation plan (K1-K17, bite-sized tasks + execution waves) Joseph Doherty 2026-06-17 05:27:50 -04:00
  • 6084e56c9f docs(m6): KPI History & Trends design — reusable tall/EAV KPI-history backbone + trend charts for all sources; T9/T10 (Teams) deferred to next major version Joseph Doherty 2026-06-17 05:18:58 -04:00
  • 59e094ada3 test(playwright): DebugViewTree — tolerate empty alarm forest (TreeView renders EmptyContent, not role=tree, when no alarms) Joseph Doherty 2026-06-17 16:08:37 -04:00
  • e7660134f2 fix(communication): drop IsConfiguredPlaceholder rows in StreamRelayActor before gRPC pack Joseph Doherty 2026-06-17 15:44:28 -04:00
  • 7f59ae12cb test(playwright): DebugView tabs+trees — assert tabbed layout, tree panes, Alarms-tab switch on connected instance Joseph Doherty 2026-06-17 15:33:28 -04:00
  • ef86a2db28 refactor(debugview): cosmetic polish — test-seam comment, default-arm comment, tighten severity assertion Joseph Doherty 2026-06-17 15:30:18 -04:00
  • 50ce26f2e6 feat(centralui): DV-5 — Debug View tabbed composition trees (Attributes/Alarms) Joseph Doherty 2026-06-17 15:23:49 -04:00
  • 59f135a4cf docs(DV-6): document Debug View tabbed-tree layout, native placeholders, and new AlarmStateChanged fields Joseph Doherty 2026-06-17 15:21:42 -04:00
  • c1e786e3fc refactor(DebugTreeBuilder): DRY BuildAttributeTree via WalkBranches; guard empty NativeSourceCanonicalName Joseph Doherty 2026-06-17 15:18:09 -04:00
  • 5f387ef3e3 feat(debugview): DV-4 implement BuildAlarmTree (computed leaves, native binding nodes, roll-up, filter) Joseph Doherty 2026-06-17 15:12:57 -04:00
  • 69b83379d5 test(dv-3): add 4-level roll-up + deep-leaf filter tests; return AsReadOnly; add caller-contract remark Joseph Doherty 2026-06-17 15:09:01 -04:00
  • b5347faf44 fix(DV-2): clarify placeholder comment, stable MinValue timestamp, drain DCL probe in new tests Joseph Doherty 2026-06-17 15:08:37 -04:00