Commit Graph

3394 Commits

Author SHA1 Message Date
Joseph Doherty b35e423c1d fix(s7): a read pass that observes nothing reports nothing — empty pass no longer clears Faulted 2026-08-18 07:00:33 -04:00
Joseph Doherty 441b34a391 fix(acl): make InvalidateIfStale a monotonic-max CAS loop — stamp publication is never deferred 2026-08-17 07:15:30 -04:00
Joseph Doherty 4c16118105 fix(s7): read-pass health is worst-state-wins — a mixed pass can no longer report Healthy 2026-08-17 07:14:32 -04:00
Joseph Doherty e9ba174156 docs(config): OTOPCUA_CONFIG_MODE is gone — site nodes are hardcoded FetchAndCache (Phase 4) 2026-08-17 07:07:51 -04:00
Joseph Doherty f64b10b964 docs(plan): perf follow-ups round 3 — r2 register closes + four local live gates 2026-08-17 07:06:07 -04:00
Joseph Doherty 49d05bc27b Merge branch 'perf/followups-r2' — round-1 register closed: ACL generation stamp + monotonic rollover guard, S7 cancellation/one-bad-decode pins + TM/CT live pin, historian bounded watches, orphaned-test-DB reaper (injection-hardened), MTConnect ownership comment, docker-dev readiness-gated deploy.sh
v2-ci / build (push) Successful in 4m45s
v2-ci / unit-tests (push) Failing after 19m17s
2026-08-17 06:32:56 -04:00
Joseph Doherty f78f9cac28 test(sql): route SchemaComplianceFixture.Dispose through the hardened TryDropDatabase — one drop-DDL shape per file (final-review carryover) 2026-08-17 06:15:28 -04:00
Joseph Doherty c15e5fc97b docs(plan): name the r2 close-out docs commit in the ledger 2026-08-17 06:11:36 -04:00
Joseph Doherty d4e5c379ce docs(plan): perf follow-ups r2 close-out — outcomes, sweep record, register annotations 2026-08-17 06:11:20 -04:00
Joseph Doherty d54b4fab62 docs(acl): fix the two comment nits from the T1 re-review — displacement precision, straggler-test claim 2026-08-17 06:09:13 -04:00
Joseph Doherty 580b77cecf fix(sql-reaper): validate the GUID suffix and QUOTENAME the drop DDL; short reaper connect timeout; mint names from the prefix constant 2026-08-17 05:52:45 -04:00
Joseph Doherty 98d6a1908e fix(acl): a stale-generation straggler can no longer roll the cache stamp backward and thrash ClearAll 2026-08-17 05:51:24 -04:00
Joseph Doherty f797df5187 docs(s7-fixture): recapture the TM/CT addressing probe against the shipped profile; note CountingPlcFactory thread-safety 2026-08-17 05:47:43 -04:00
Joseph Doherty fd202d81ce test(s7): live-pin the Timer/Counter multi-var exclusion against a TM/CT-seeded s7_1500 fixture 2026-08-17 05:39:58 -04:00
Joseph Doherty 68461fbfb6 test(historian): justify/tighten the shutdown watch window; single read of RemoveCallCount per poll 2026-08-17 05:39:52 -04:00
Joseph Doherty 120e885b31 test(s7): assert the stale handle is disposed, not just replaced, in the cancellation-reopen pins 2026-08-17 05:39:47 -04:00
Joseph Doherty 1979cf4119 fix(acl): stamp the generation on Shard so a rollover racer cannot serve a stale-generation verdict; eviction-swap capacity hint 2026-08-17 05:37:56 -04:00
Joseph Doherty 8946644bb1 test(sql): reap >24h-old orphaned test databases at fixture startup (AdminUI + Configuration prefixes) 2026-08-17 05:37:22 -04:00
Joseph Doherty 9f09a62ad2 fix(docker-dev): guard the deploy POST against transport-level curl failure; bound both curls with --max-time 2026-08-17 05:37:04 -04:00
Joseph Doherty 45d670928a test(historian): replace the recorder tests' fixed sleeps with bounded watches on drain-pass and truncation observables 2026-08-17 05:35:30 -04:00
Joseph Doherty 4f86073333 test(s7): pin the span/multi-var cancellation reopen contract, one-bad-decode-in-chunk, and multi-var shape mismatch 2026-08-17 05:33:45 -04:00
Joseph Doherty a61b3c98a2 chore(docker-dev): readiness-gated deploy.sh + Traefik access log for the first-POST 404 2026-08-17 05:32:44 -04:00
Joseph Doherty 1edfc263ec docs(mtconnect): state AsStream's buffer aliasing and lifetime contract 2026-08-17 05:31:28 -04:00
Joseph Doherty 248d998a79 docs(plan): perf follow-ups round 2 — ACL rollover window, S7 coverage + TM/CT live pin, historian bounded watches, test-DB reaper, docker-dev readiness gate 2026-08-17 05:28:24 -04:00
Joseph Doherty 7bb888bed1 Merge branch 'perf/followups' — follow-up register closed: per-driver overrun meter, drain-cancellation + ACL eviction + alarm-tracking fixes, SQL-Server-backed test pins, MTConnect XmlReader streaming, S7 multi-var leftovers; S7 + docker-dev live gates PASSED
v2-ci / build (push) Successful in 5m10s
v2-ci / unit-tests (push) Failing after 16m0s
2026-08-17 05:01:59 -04:00
Joseph Doherty 0b3972864a docs(plan): record the close-out docs commit SHA in the follow-ups ledger 2026-08-17 04:43:09 -04:00
Joseph Doherty 07fd17a34e docs(plan): perf follow-ups close-out — outcomes, live-gate evidence, register annotations 2026-08-17 04:42:51 -04:00
Joseph Doherty 7c5a843ace docs(code): close-out comment fixes from the follow-ups review round 2026-08-17 04:32:53 -04:00
Joseph Doherty 57c66416d8 test(s7): live-gate span reads + multi-var leftovers against the s7_1500 fixture 2026-08-17 04:24:39 -04:00
Joseph Doherty 6b46c485ef test(historian): bounded-wait durability read; honest nondeterminism notes on the #491 controls 2026-08-17 04:07:08 -04:00
Joseph Doherty 20022083df perf(s7): span leftovers batch through multi-var read PDUs with per-chunk fallback 2026-08-17 04:05:42 -04:00
Joseph Doherty 5ae430237f fix(alarms): background tasks register before they start; volatile _disposed 2026-08-17 04:04:45 -04:00
Joseph Doherty cda82c074e perf(mtconnect): stream sample-chunk parsing through XmlReader; no per-chunk document tree 2026-08-17 03:57:16 -04:00
Joseph Doherty d884934593 fix(acl): shard eviction swaps the shard object so _globalCount cannot over-subtract; concurrency stress test 2026-08-17 03:55:13 -04:00
Joseph Doherty 97902d6879 fix(drivers): overrun-meter tag keys align with the Meter's snake_case convention (driver_type/driver_instance) 2026-08-17 03:54:53 -04:00
Joseph Doherty c149410ba3 test(adminui): SQL-Server-backed pins for the drift watermark aggregate and the rename scan's collation widening 2026-08-17 03:53:16 -04:00
Joseph Doherty 7870c91fe4 fix(historian): a shutdown cancellation mid-drain is a pass abort, not a per-tag failure 2026-08-17 03:52:55 -04:00
Joseph Doherty dba5f806d3 fix(runtime): explicit 30s command timeout on the Direct-apply artifact read 2026-08-17 03:49:27 -04:00
Joseph Doherty 6ee553cf8f feat(s7): expose ReadMultipleVarsAsync through the IS7Plc seam 2026-08-17 03:48:15 -04:00
Joseph Doherty c4d8e4a200 fix(acl): revalidation memo rejects empty node identifiers, mirroring the authorizer's guard 2026-08-17 03:47:19 -04:00
Joseph Doherty e22ecea008 feat(drivers): per-driver poll-overrun meter on the shared OtOpcUa Meter; NoteOverrun + backoffCap doc notes 2026-08-17 03:46:27 -04:00
Joseph Doherty acb3772426 fix(s7): validate span-read options at parse time; document the over-PDU degradation 2026-08-17 03:45:14 -04:00
Joseph Doherty f06cbe16d9 docs(plan): perf follow-ups — 15-task plan off the remainder's follow-up register 2026-08-17 03:41:40 -04:00
Joseph Doherty e40a038527 Merge branch 'perf/roadmap-remainder' — 28-task perf remainder: historian batching, ACL cache re-shape, driver round-trips, alarm coalescing, AdminUI hot spots, off-mailbox apply 2026-08-17 03:18:36 -04:00
Joseph Doherty c8a7014388 fix(alarms): replacement drainer starts on a fresh stack; honest bounds in the latch comments 2026-08-16 05:57:05 -04:00
Joseph Doherty cd010c7165 docs(plan): commit the execution ledger's final state 2026-08-16 05:41:34 -04:00
Joseph Doherty 445bb855e2 fix: release the alarm drain latch on escape; cancel before disposing the page poll timers 2026-08-16 05:40:27 -04:00
Joseph Doherty b9e9df4081 docs(code): honest rationales — Akka restart semantics, per-key shards, EF literal inlining; retire or annotate orphaned members 2026-08-16 05:33:33 -04:00
Joseph Doherty dbc9223206 docs(code): correct comments stale after the perf remainder 2026-08-16 05:09:00 -04:00
Joseph Doherty e75bb38734 docs: perf roadmap remainder — outcomes + follow-up register 2026-08-16 05:08:53 -04:00