Commit Graph

  • 847302e297 test(dcl): add failover state machine tests for DataConnectionActor Joseph Doherty 2026-03-22 08:47:44 -04:00
  • 5de6c8d052 docs(dcl): document primary/backup endpoint redundancy across requirements and test infra Joseph Doherty 2026-03-22 08:43:59 -04:00
  • e8df71ea64 feat(cli): add --primary-config, --backup-config, --failover-retry-count to data connection commands Joseph Doherty 2026-03-22 08:41:57 -04:00
  • ab4e88f17f feat(ui): add primary/backup endpoint fields to data connection form Joseph Doherty 2026-03-22 08:36:18 -04:00
  • 801c0c1df2 feat(dcl): add active endpoint to health reports and log failover events Joseph Doherty 2026-03-22 08:34:05 -04:00
  • da290fa4f8 feat(dcl): add failover state machine to DataConnectionActor with round-robin endpoint switching Joseph Doherty 2026-03-22 08:30:03 -04:00
  • 46304678da feat(dcl): extend CreateConnectionCommand with backup config and failover retry count Joseph Doherty 2026-03-22 08:24:39 -04:00
  • 04af03980e feat(dcl): rename Configuration to PrimaryConfiguration, add BackupConfiguration and FailoverRetryCount Joseph Doherty 2026-03-22 08:18:31 -04:00
  • 5ca1be328c docs(dcl): add primary/backup data connections implementation plan Joseph Doherty 2026-03-22 08:13:23 -04:00
  • 6267ff882c docs(dcl): add primary/backup data connection endpoints design Joseph Doherty 2026-03-22 08:09:25 -04:00
  • 5ec7f35150 feat(dcl): replace hand-rolled LmxProxy gRPC client with real LmxProxyClient library Joseph Doherty 2026-03-22 07:55:50 -04:00
  • abb7579227 chore(infra): remove LmxFakeProxy — replaced by real LmxProxy v2 instances on windev Joseph Doherty 2026-03-22 07:42:13 -04:00
  • efed8352c3 feat(infra): add second OPC UA server instance (opcua2) on port 50010 Joseph Doherty 2026-03-22 07:31:18 -04:00
  • ac44122bf7 docs(lmxproxy): add dual-instance configuration (A on 50100, B on 50101) Joseph Doherty 2026-03-22 07:26:06 -04:00
  • 2c99b370a0 chore(lmxproxy): switch health probe tag to DevAppEngine.Scheduler.ScanTime, remove temp prompts Joseph Doherty 2026-03-22 07:18:39 -04:00
  • ec21a9a2a0 docs(lmxproxy): mark gap 1 and gap 2 as resolved with test verification Joseph Doherty 2026-03-22 07:10:38 -04:00
  • a6c01d73e2 feat(lmxproxy): active health probing + address-based subscription cleanup (gap 1 & 2) Joseph Doherty 2026-03-22 06:44:21 -04:00
  • 86a15c0a65 docs(lmxproxy): document reconnection gaps from platform restart testing Joseph Doherty 2026-03-22 06:19:30 -04:00
  • 5a9574fb95 feat(lmxproxy): add MxAccess status detail mapping for richer error messages Joseph Doherty 2026-03-22 05:10:50 -04:00
  • 73b2b2f6d7 docs(lmxproxy): add STA message pump gap analysis with implementation guide Joseph Doherty 2026-03-22 05:02:15 -04:00
  • 467fdc34d8 docs(lmxproxy): correct deviation #7 — OnWriteComplete is a COM threading issue, not MxAccess behavior Joseph Doherty 2026-03-22 04:53:54 -04:00
  • 866c73dcd4 docs(lmxproxy): add deviation #8 — SubscriptionManager COM subscription wiring Joseph Doherty 2026-03-22 04:47:23 -04:00
  • 7bed4b901a fix(lmxproxy): wire MxAccess COM subscriptions in SubscriptionManager Joseph Doherty 2026-03-22 04:46:15 -04:00
  • c5d4849bd3 fix(lmxproxy): resolve write timeout — bypass OnWriteComplete callback for supervisory writes Joseph Doherty 2026-03-22 04:39:14 -04:00
  • e2c204b62b docs(lmxproxy): add execution prompt to fix failing write integration tests Joseph Doherty 2026-03-22 04:38:30 -04:00
  • 7079f6eed4 docs(lmxproxy): add ArchestrA MXAccess Toolkit reference documentation Joseph Doherty 2026-03-22 04:30:39 -04:00
  • f4386bc518 docs(lmxproxy): record v2 rebuild deviations and key technical decisions Joseph Doherty 2026-03-22 04:21:36 -04:00
  • 779598d962 feat(lmxproxy): phase 7 — integration tests, deployment to windev, v1 cutover Joseph Doherty 2026-03-22 01:11:44 -04:00
  • 6d9bf594ec feat(lmxproxy): phase 7 — integration test project and test scenarios Joseph Doherty 2026-03-22 00:31:26 -04:00
  • 215cfa29f3 feat(lmxproxy): phase 6 — client extras (builder, factory, DI, streaming extensions) Joseph Doherty 2026-03-22 00:29:16 -04:00
  • 8ba75b50e8 feat(lmxproxy): phase 5 — client core (ILmxProxyClient, connection, read/write/subscribe) Joseph Doherty 2026-03-22 00:22:29 -04:00
  • 9eb81180c0 feat(lmxproxy): phase 4 — host health monitoring, metrics, status web server Joseph Doherty 2026-03-22 00:14:40 -04:00
  • 16d1b95e9a feat(lmxproxy): phase 3 — host gRPC server, security, configuration, service hosting Joseph Doherty 2026-03-22 00:05:36 -04:00
  • 64c92c63e5 feat(lmxproxy): phase 2 — host core (MxAccessClient, SessionManager, SubscriptionManager) Joseph Doherty 2026-03-21 23:58:17 -04:00
  • 0d63fb1105 feat(lmxproxy): phase 1 — v2 protocol types and domain model Joseph Doherty 2026-03-21 23:41:56 -04:00
  • 08d2a07d8b docs(lmxproxy): update test tags to TestChildObject namespace for v2 type coverage Joseph Doherty 2026-03-21 23:35:15 -04:00
  • 4303f06fc3 docs(lmxproxy): add v2 rebuild design, 7-phase implementation plans, and execution prompt Joseph Doherty 2026-03-21 23:29:42 -04:00
  • 683aea0fbe docs: add LmxProxy requirements documentation with v2 protocol as authoritative design Joseph Doherty 2026-03-21 22:38:11 -04:00
  • 970d0a5cb3 refactor: simplify data connections from many-to-many site assignment to direct site ownership Joseph Doherty 2026-03-21 21:07:10 -04:00
  • cd6efeea90 docs: add requirements generation prompt for LmxProxy project Joseph Doherty 2026-03-21 21:06:59 -04:00
  • 2810306415 feat: add standalone LmxProxy solution, windev VM documentation Joseph Doherty 2026-03-21 20:50:05 -04:00
  • 512153646a test: add role-based navigation tests verifying correct nav sections per user role Joseph Doherty 2026-03-21 15:25:34 -04:00
  • d3194e3634 feat: separate create/edit form pages, Playwright test infrastructure, /auth/token endpoint Joseph Doherty 2026-03-21 15:17:24 -04:00
  • b3f8850711 docs: document script hot-reload mechanisms for all script types Joseph Doherty 2026-03-21 13:42:06 -04:00
  • eeca930cbd fix: add EF migration for GrpcNodeAAddress/GrpcNodeBAddress columns on Sites table Joseph Doherty 2026-03-21 12:44:21 -04:00
  • 416a03b782 feat: complete gRPC streaming channel — site host, docker config, docs, integration tests Joseph Doherty 2026-03-21 12:38:33 -04:00
  • 3fe3c4161b test: add proto contract, cleanup verification, and regression guardrail tests Joseph Doherty 2026-03-21 12:36:27 -04:00
  • 49f042a937 refactor: remove ClusterClient streaming path (DebugStreamEvent), events flow via gRPC Joseph Doherty 2026-03-21 12:18:52 -04:00
  • 2cd43b6992 feat: update DebugStreamBridgeActor to use gRPC for streaming events Joseph Doherty 2026-03-21 12:14:24 -04:00
  • 25a6022f7b feat: add SiteStreamGrpcClient and SiteStreamGrpcClientFactory Joseph Doherty 2026-03-21 12:06:38 -04:00
  • 55a05914d0 feat: add SiteStreamGrpcServer with Channel<T> bridge and stream limits Joseph Doherty 2026-03-21 11:52:31 -04:00
  • d70bbbe739 feat: add StreamRelayActor bridging Akka events to gRPC proto channel Joseph Doherty 2026-03-21 11:48:04 -04:00
  • 9b0a80dcbd feat: add GrpcNodeAAddress/GrpcNodeBAddress to Site entity, CLI, and UI Joseph Doherty 2026-03-21 11:45:22 -04:00
  • 64ee316609 feat: add GrpcPort config to NodeOptions with startup validation Joseph Doherty 2026-03-21 11:42:41 -04:00
  • deb58e1f17 feat: add sitestream.proto definition and generated gRPC stubs Joseph Doherty 2026-03-21 11:41:01 -04:00
  • 826cfbee31 feat: add sitestream.proto definition and generated gRPC stubs Joseph Doherty 2026-03-21 11:37:39 -04:00
  • b76ce09221 docs: add gRPC streaming channel implementation plan with task tracking Joseph Doherty 2026-03-21 11:32:24 -04:00
  • 3efec91386 fix: route debug stream events through ClusterClient site→central path Joseph Doherty 2026-03-21 11:32:17 -04:00
  • 41aff339b2 docs: add gRPC streaming channel design plan for site→central real-time data Joseph Doherty 2026-03-21 11:26:09 -04:00
  • fd2e96fea2 feat: replace debug view polling with real-time SignalR streaming Joseph Doherty 2026-03-21 01:34:53 -04:00
  • d91aa83665 refactor(docs): move requirements and test infra docs into docs/ subdirectories Joseph Doherty 2026-03-21 01:11:35 -04:00
  • 0a85a839a2 feat(infra): add Traefik load balancer with active node health check for central cluster failover Joseph Doherty 2026-03-21 00:44:37 -04:00
  • 1a540f4f0a feat: add HTTP Management API, migrate CLI from Akka ClusterClient to HTTP Joseph Doherty 2026-03-20 23:55:31 -04:00
  • 7740a3bcf9 feat: add JoeAppEngine OPC UA nodes, fix DCL auto-reconnect and quality push Joseph Doherty 2026-03-19 13:27:54 -04:00
  • ffdda51990 fix(infra): use appConfig.Validate instead of CheckApplicationInstanceCertificate Joseph Doherty 2026-03-19 11:30:58 -04:00
  • 8f2700f11e test(infra): add integration smoke test for RealLmxProxyClient against LmxFakeProxy Joseph Doherty 2026-03-19 11:29:00 -04:00
  • 2cb592ad00 docs: add LmxFakeProxy to test infrastructure documentation Joseph Doherty 2026-03-19 11:27:30 -04:00
  • edb2ab98cb feat(infra): add LmxFakeProxy Dockerfile and docker-compose service Joseph Doherty 2026-03-19 11:26:19 -04:00
  • aef70bec7f feat(infra): wire up Program.cs with CLI args, env vars, and OPC UA bridge startup Joseph Doherty 2026-03-19 11:25:36 -04:00
  • 6852250497 feat(infra): add ScadaServiceImpl with full proto parity for all RPCs Joseph Doherty 2026-03-19 11:24:26 -04:00
  • 9cc8a1ae80 feat(infra): add TagMapper with address mapping, value parsing, and quality mapping Joseph Doherty 2026-03-19 11:20:57 -04:00
  • efbedc60a8 feat(infra): add SessionManager with full session tracking and API key validation Joseph Doherty 2026-03-19 11:20:44 -04:00
  • 1d498b94b4 feat(infra): add IOpcUaBridge interface and OpcUaBridge with OPC UA reconnection Joseph Doherty 2026-03-19 11:20:25 -04:00
  • 1b27b89ca0 feat(infra): scaffold LmxFakeProxy project with proto and test project Joseph Doherty 2026-03-19 11:15:54 -04:00
  • 3e93a0d8c3 docs: add LmxFakeProxy implementation plan with 10 tasks Joseph Doherty 2026-03-19 11:13:51 -04:00
  • e19a568b9b docs: add LmxFakeProxy design — OPC UA-backed test proxy for LmxProxy protocol Joseph Doherty 2026-03-19 11:08:47 -04:00
  • e837eae2cc feat: wire real LmxProxy gRPC client into Data Connection Layer Joseph Doherty 2026-03-18 11:57:18 -04:00
  • da683d4fe9 fix: lazy-compile API method scripts and prefix composed alarm trigger attributes Joseph Doherty 2026-03-18 09:30:12 -04:00
  • db387c6613 fix: include recipients in artifact deployment and load shared scripts on startup Joseph Doherty 2026-03-18 09:13:10 -04:00
  • 78fbb13df7 feat: wire Inbound API Route.To().Call() to site instance scripts and add Roslyn compilation Joseph Doherty 2026-03-18 08:43:13 -04:00
  • eb8ead58d2 feat: wire SQLite replication between site nodes and fix ConfigurationDatabase tests Joseph Doherty 2026-03-18 08:28:02 -04:00
  • f063fb1ca3 fix: wire DCL tag value delivery, alarm evaluation, and snapshot timestamps Joseph Doherty 2026-03-18 07:36:48 -04:00
  • 9c6e3c2e56 feat: add CLI debug snapshot command for one-shot instance state inspection Joseph Doherty 2026-03-18 07:16:22 -04:00
  • 6ee820b0f0 docs: add Docker/OrbStack CLI connection note to CLI README Joseph Doherty 2026-03-18 07:04:53 -04:00
  • 899dec6b6f feat: wire ExternalSystem, Database, and Notify APIs into script runtime Joseph Doherty 2026-03-18 02:41:18 -04:00
  • 8095c8efbe fix: only active singleton node sends health reports Joseph Doherty 2026-03-18 01:44:57 -04:00
  • 213ca2698a fix: update instance counts after startup batch creation completes Joseph Doherty 2026-03-18 01:28:46 -04:00
  • c63fb1c4a6 feat: achieve CLI parity with Central UI Joseph Doherty 2026-03-18 01:21:20 -04:00
  • b2385709f8 fix: raise health report sender log level to INFO for observability Joseph Doherty 2026-03-18 01:08:44 -04:00
  • f165ca2774 feat: wire all health metrics and add instance counts to dashboard Joseph Doherty 2026-03-18 00:57:49 -04:00
  • 88b5f6cb54 fix: handle mixed JSON types in data connection config deserialization Joseph Doherty 2026-03-18 00:39:01 -04:00
  • 68115e7e38 feat: move Areas to Design role, fix logout, add Sign Out button Joseph Doherty 2026-03-18 00:28:35 -04:00
  • 75a6636a2c fix: wire DCL connection state changes into ISiteHealthCollector Joseph Doherty 2026-03-18 00:20:02 -04:00
  • 4f22ca2b1f feat: replace ActorSelection with ClusterClient for inter-cluster communication Joseph Doherty 2026-03-18 00:08:47 -04:00
  • e5eb871961 fix: wire up health report pipeline between sites and central aggregator Joseph Doherty 2026-03-17 23:46:17 -04:00
  • 9e97c1acd2 feat: replace site registration with database-driven site addressing Joseph Doherty 2026-03-17 23:13:10 -04:00
  • eb8d5ca2c0 feat: add Docker infrastructure for 8-node cluster topology (2 central + 3 sites) Joseph Doherty 2026-03-17 22:12:50 -04:00
  • 775cb8084f feat: data-sourced attributes start with uncertain quality before first DCL value Joseph Doherty 2026-03-17 18:25:39 -04:00
  • adc1af9f16 docs: note CLI as preferred tool for non-UI system setup and control Joseph Doherty 2026-03-17 18:19:31 -04:00
  • 85d351d729 chore: ignore all logs/ directories at any depth Joseph Doherty 2026-03-17 18:18:28 -04:00