-
0d3ec46c14
fix(adminui): capture audit username at click time, not at panel init
Joseph Doherty
2026-05-28 11:58:12 -04:00
-
662f3f9f5c
refactor(driver-pages): address Phase 6/8 deep-review findings
Joseph Doherty
2026-05-28 11:52:20 -04:00
-
dcd2509548
refactor(driver-pages): address post-review follow-ups
Joseph Doherty
2026-05-28 11:41:46 -04:00
-
64e4726fff
docs(plans): mark all 48 driver-pages tasks complete in persistence file
Joseph Doherty
2026-05-28 11:32:45 -04:00
-
494da22cd1
test(adminui): E2E scaffolding for Test Connect + Reconnect + Status hub
Joseph Doherty
2026-05-28 11:31:12 -04:00
-
063005fefa
feat(adminui): DriverTagPicker modal + 9 static address builders
Joseph Doherty
2026-05-28 11:21:33 -04:00
-
ffcc8d1065
feat(adminui): Reconnect/Restart on DriverStatusPanel (DriverOperator-gated)
Joseph Doherty
2026-05-28 11:14:04 -04:00
-
4b374fd177
feat(adminui): Test Connect button on every typed driver page
Joseph Doherty
2026-05-28 11:02:49 -04:00
-
54f0dbddb9
fix(drivers): align probe DriverType strings with AdminUI keys
Joseph Doherty
2026-05-28 10:55:15 -04:00
-
c19d124e89
feat(drivers): TCP-connect IDriverProbe for all 9 driver types
Joseph Doherty
2026-05-28 10:53:42 -04:00
-
f3f328c25c
feat(adminops): IDriverProbe + TestDriverConnect actor handler
Joseph Doherty
2026-05-28 10:44:00 -04:00
-
4584612a1a
feat(adminui): DriverStatusPanel + wire into 9 typed pages
Joseph Doherty
2026-05-28 10:29:43 -04:00
-
4203b84d51
feat(runtime): publish DriverHealthChanged via DriverInstanceActor
Joseph Doherty
2026-05-28 10:22:44 -04:00
-
29370fde3c
feat(adminui): add DriverStatusSignalRBridge + InMemory snapshot store
Joseph Doherty
2026-05-28 10:13:30 -04:00
-
3f23a1acd3
feat(adminui): add DriverStatusHub
Joseph Doherty
2026-05-28 10:13:25 -04:00
-
4d5c6ac892
feat(messages): add DriverHealthChanged DPS contract
Joseph Doherty
2026-05-28 10:10:16 -04:00
-
c4086c243c
fix(adminui): S7 typed page no longer wipes Tags on save
Joseph Doherty
2026-05-28 10:06:43 -04:00
-
a971db3ee5
refactor(adminui): retire generic DriverEdit.razor
Joseph Doherty
2026-05-28 09:59:25 -04:00
-
5f8fa7004c
feat(adminui): wire all 9 typed pages into DriverEditRouter map
Joseph Doherty
2026-05-28 09:58:36 -04:00
-
059a6218f7
feat(adminui): AbLegacy typed driver page
Joseph Doherty
2026-05-28 09:57:07 -04:00
-
8149739161
feat(adminui): FOCAS typed driver page
Joseph Doherty
2026-05-28 09:56:53 -04:00
-
2c16062457
feat(adminui): Historian.Wonderware typed driver page
Joseph Doherty
2026-05-28 09:55:15 -04:00
-
dc21cbad53
feat(adminui): AbCip typed driver page
Joseph Doherty
2026-05-28 09:55:13 -04:00
-
dfbf6793de
feat(adminui): TwinCat typed driver page
Joseph Doherty
2026-05-28 09:54:49 -04:00
-
a243cfd126
feat(adminui): Galaxy typed driver page
Joseph Doherty
2026-05-28 09:52:31 -04:00
-
5cad9b260e
feat(adminui): S7 typed driver page
Joseph Doherty
2026-05-28 09:52:10 -04:00
-
a3073d16bf
feat(adminui): Modbus typed driver page
Joseph Doherty
2026-05-28 09:52:01 -04:00
-
efcc2311e6
feat(adminui): OpcUaClient typed driver page
Joseph Doherty
2026-05-28 09:50:34 -04:00
-
7014c9376c
feat(adminui): reference all 9 Driver.*.Contracts projects
Joseph Doherty
2026-05-28 09:42:12 -04:00
-
27b3a014da
refactor(adminui): hand /drivers routes to DriverTypePicker + DriverEditRouter
Joseph Doherty
2026-05-28 09:39:49 -04:00
-
55e8bf70d9
feat(adminui): add DriverEditRouter dispatch page
Joseph Doherty
2026-05-28 09:38:35 -04:00
-
c0ce5d02bd
feat(adminui): add DriverTypePicker landing page
Joseph Doherty
2026-05-28 09:36:54 -04:00
-
a28f4cdd25
refactor(adminui): drive DriverEdit.razor through shared section components
Joseph Doherty
2026-05-28 09:33:06 -04:00
-
a008530af6
feat(adminui): add DriverResilienceSection shared component
Joseph Doherty
2026-05-28 09:29:41 -04:00
-
1ff3875a19
feat(adminui): add DriverIdentitySection shared component
Joseph Doherty
2026-05-28 09:28:29 -04:00
-
85af126406
feat(adminui): add DriverFormShell shared component
Joseph Doherty
2026-05-28 09:26:54 -04:00
-
f2f6eeb74e
feat(drivers): expose ProbeTimeoutSeconds on every driver Options class
Joseph Doherty
2026-05-28 09:21:50 -04:00
-
8c0a32025d
refactor(driver-historian-wonderware-client): extract WonderwareHistorianClientOptions to .Contracts
Joseph Doherty
2026-05-28 09:16:49 -04:00
-
5ffbc42d8c
refactor(driver-galaxy): extract GalaxyDriverOptions to .Contracts
Joseph Doherty
2026-05-28 09:15:57 -04:00
-
5f0e0482ed
refactor(driver-opcuaclient): extract OpcUaClientDriverOptions to .Contracts
Joseph Doherty
2026-05-28 09:14:57 -04:00
-
d892ab9e12
refactor(driver-focas): extract FocasDriverOptions to .Contracts
Joseph Doherty
2026-05-28 09:13:10 -04:00
-
9f62f2c242
refactor(driver-s7): extract S7DriverOptions to .Contracts with parallel CpuType enum
Joseph Doherty
2026-05-28 09:08:27 -04:00
-
a88721ce31
refactor(driver-twincat): extract TwinCATDriverOptions to .Contracts
Joseph Doherty
2026-05-28 09:01:28 -04:00
-
4902295211
refactor(driver-ablegacy): extract AbLegacyDriverOptions to .Contracts
Joseph Doherty
2026-05-28 08:59:21 -04:00
-
b474d63335
refactor(driver-abcip): extract AbCipDriverOptions to .Contracts
Joseph Doherty
2026-05-28 08:57:36 -04:00
-
5058a56645
refactor(driver-modbus): extract ModbusDriverOptions to .Contracts
Joseph Doherty
2026-05-28 08:50:17 -04:00
-
dc12c3732e
test(adminui): scaffold AdminUI.Tests project
Joseph Doherty
2026-05-28 08:42:42 -04:00
-
c1c68c9134
docs(plans): AdminUI driver-specific pages implementation plan
Joseph Doherty
2026-05-28 08:36:53 -04:00
-
af06648558
docs(plans): AdminUI driver-specific pages design
Joseph Doherty
2026-05-28 08:29:20 -04:00
-
64e3fbe035
docs: backfill XML documentation across 756 files
Joseph Doherty
2026-05-28 08:10:17 -04:00
-
f9fc7dd2e1
feat(host): wire UseWindowsService so sc.exe-installed service runs cleanly
Joseph Doherty
2026-05-26 17:07:52 -04:00
-
7dfbca6469
feat(opcua): materialise SystemPlatform tags (Galaxy) as OPC UA variables
Joseph Doherty
2026-05-26 15:43:22 -04:00
-
44b8a9c7ff
fix(deploy): ClusterNode NodeId uses host:port + Traefik sticky cookie
Joseph Doherty
2026-05-26 15:10:11 -04:00
-
60beb9128e
feat(deploy,runtime): wire mxaccessgw connection — endpoint, key, seed row
Joseph Doherty
2026-05-26 14:58:02 -04:00
-
6884de9774
revert(adminui): restore 'OtOpcUa Admin' login title
Joseph Doherty
2026-05-26 14:50:06 -04:00
-
c064ec16cf
fix(security,adminui): logout redirects to /login + restyle login card
Joseph Doherty
2026-05-26 14:47:53 -04:00
-
ed1c17bc7b
fix(deploy,host): docker-dev bring-up — anon health probes, robust seeder
Joseph Doherty
2026-05-26 14:37:01 -04:00
-
1e64488c0d
Merge branch 'v2-gap-closeout' — close audit gaps + dev-UX polish
Joseph Doherty
2026-05-26 14:08:29 -04:00
-
-
f02071c9a2
feat(deploy): bake the ServerCluster/ClusterNode seed into docker-compose
v2-gap-closeout
Joseph Doherty
2026-05-26 14:06:47 -04:00
-
993e012e55
fix(deploy): site clusters share the single OtOpcUa ConfigDb
Joseph Doherty
2026-05-26 14:02:24 -04:00
-
961e09430a
feat(deploy): add site-a + site-b 2-node clusters to docker-dev
Joseph Doherty
2026-05-26 13:59:23 -04:00
-
a1a7646b33
fix(adminui): refresh stale F9 stub copy on /alerts page
Joseph Doherty
2026-05-26 13:53:09 -04:00
-
e4d0d82f7f
feat(adminui): collapsible nav sidebar with cookie state + LoginLayout
Joseph Doherty
2026-05-26 13:48:35 -04:00
-
2915755a7c
fix(host,security): wire static assets, DI lifetimes, form login, dev-stub LDAP
Joseph Doherty
2026-05-26 13:48:18 -04:00
-
a5c6ce279e
docs(v2): finish path corrections in phase-7-status, admin-ui, OpcUaClient fixture
Joseph Doherty
2026-05-26 12:09:47 -04:00
-
59b3d9f295
docs: rewrite stale src/Server/Server|Admin/ paths to v2 project locations
Joseph Doherty
2026-05-26 12:06:59 -04:00
-
89095c15e3
docs(v2): update for gap-closeout — peer-URI discovery, role overlays, release status
Joseph Doherty
2026-05-26 11:58:06 -04:00
-
bdae749b2b
docs(plans): mark gap-closeout tasks complete
Joseph Doherty
2026-05-26 11:48:05 -04:00
-
e8c4f18607
ci(v2): include OpcUaServer.IntegrationTests in integration matrix
Joseph Doherty
2026-05-26 11:42:44 -04:00
-
cb936db7d6
fix(opcua): PopulateServerArray writes IServerInternal.ServerUris so clients see peers
Joseph Doherty
2026-05-26 11:39:44 -04:00
-
a5412c16a3
fix(test): align DualEndpointTests SDK to 1.5.374.126 + sync API
Joseph Doherty
2026-05-26 11:34:01 -04:00
-
dce2528c68
test(opcua): DualEndpointTests — real client reads peer URIs from Server.ServerArray
Joseph Doherty
2026-05-26 11:29:53 -04:00
-
83eda9e826
test(opcua): scaffold OtOpcUa.OpcUaServer.IntegrationTests project
Joseph Doherty
2026-05-26 11:23:21 -04:00
-
70ffd2849d
feat(opcua): OpcUaApplicationHost publishes peer URIs in Server.ServerArray
Joseph Doherty
2026-05-26 11:21:11 -04:00
-
898a47746d
feat(host): add per-role appsettings overlays for admin/driver/admin-driver
Joseph Doherty
2026-05-26 11:19:10 -04:00
-
25ce111981
refactor(test): rename FailoverScenarioTests → FailoverDuringDeployTests for plan parity
Joseph Doherty
2026-05-26 11:18:13 -04:00
-
7209bc99e2
docs(plans): gap-closeout plan + task persistence file
Joseph Doherty
2026-05-26 11:15:59 -04:00
-
-
2c49f18442
Merge branch 'v2-akka-fuse' — Akka + fused-host v2 architecture
Joseph Doherty
2026-05-26 11:00:53 -04:00
-
-
05a0596fb1
feat(host): F9b RoslynScriptedAlarmEvaluator + #107 close engine DI
v2-akka-fuse
Joseph Doherty
2026-05-26 10:58:04 -04:00
-
219d10a22d
feat(host): F8b RoslynVirtualTagEvaluator — production virtual-tag eval
Joseph Doherty
2026-05-26 10:55:56 -04:00
-
607dc51dec
feat(opcua): #85 UNS Area/Line/Equipment folder hierarchy in SDK
Joseph Doherty
2026-05-26 10:48:56 -04:00
-
9d86287d08
test(opcua): Task 60 ServiceLevel end-to-end through SDK
Joseph Doherty
2026-05-26 10:40:58 -04:00
-
2697af31d1
feat(opcua,host): #81 ServiceLevel SDK publisher
Joseph Doherty
2026-05-26 10:37:42 -04:00
-
52997ee164
feat(observability): F13d Prometheus + OpenTelemetry instrumentation
Joseph Doherty
2026-05-26 10:29:40 -04:00
-
21eac21409
feat(opcua,host): F13c LDAP-bound UserName validator
Joseph Doherty
2026-05-26 10:21:37 -04:00
-
8b08566f41
feat(opcua): F13b endpoint security profiles — Sign + SignAndEncrypt
Joseph Doherty
2026-05-26 10:15:04 -04:00
-
50787823d3
feat(host,runtime): #108 Host DI bindings — OPC UA server + deferred sink
Joseph Doherty
2026-05-26 10:02:15 -04:00
-
7e22e2250c
feat(runtime): #109 OpcUaPublishActor — load artifact, compose, plan-diff, apply
Joseph Doherty
2026-05-26 09:55:11 -04:00
-
d21f6947e1
feat(opcua): F10b SDK NodeManager binding — real OPC UA address-space writes
Joseph Doherty
2026-05-26 09:49:44 -04:00
-
7fa863f6da
feat(runtime): #113 DependencyMuxActor — drivers → virtual-tag fan-out
Joseph Doherty
2026-05-26 09:43:06 -04:00
-
f427dc4f26
feat(runtime): #112 ScriptedAlarmActor state persistence via IAlarmActorStateStore
Joseph Doherty
2026-05-26 09:34:37 -04:00
-
3e3f7588bd
feat(runtime,host): close F7 — driver subscribe + write paths + Host DI
Joseph Doherty
2026-05-26 09:28:34 -04:00
-
c02f016f1d
feat(opcua): F14 Phase7Plan + Phase7Applier
Joseph Doherty
2026-05-26 09:16:08 -04:00
-
a1325299ce
feat(runtime): F10 OpcUaPublishActor sink seams + redundancy-driven ServiceLevel
Joseph Doherty
2026-05-26 09:10:55 -04:00
-
14fb2b05ed
feat(runtime): F8/F9 engine evaluator seams + DPS fan-out
Joseph Doherty
2026-05-26 09:05:04 -04:00
-
da141497f8
feat(runtime): F7 spawn lifecycle + F20 ShouldStub gate
Joseph Doherty
2026-05-26 08:57:16 -04:00
-
9892ceae9a
docs(plans): mark F15.3 complete — F15 fully shipped
Joseph Doherty
2026-05-26 08:39:47 -04:00
-
59858129cb
feat(adminui): F15.3 closes F15 — live alerts/script-log, CSV import, Monaco editor
Joseph Doherty
2026-05-26 08:39:17 -04:00
-
e248e037e7
docs(plans): mark F15 complete — read views + live-edit CRUD
Joseph Doherty
2026-05-26 08:28:13 -04:00
-
ae980aef5d
feat(adminui): F15.2 batch 4 — closes live-edit forms (Acl/VirtualTag/ScriptedAlarm/Script)
Joseph Doherty
2026-05-26 08:27:56 -04:00