Commit Graph

  • 6e1ab62d27 feat(saf): resync ack confirmation + completed/ack-missing telemetry; doc resync rewrite (plan R2-02 T7) Joseph Doherty 2026-07-13 10:05:33 -04:00
  • 9b4890326e fix(transport): validate MaxConcurrentImportSessions at startup — a zero cap no longer bricks imports silently (plan R2-05 T8) Joseph Doherty 2026-07-13 10:05:31 -04:00
  • db623c1435 fix(transport): warn on import of instance overrides targeting locked template members — inert rows no longer silent (plan R2-05 T7) Joseph Doherty 2026-07-13 10:04:43 -04:00
  • 7b95ef3752 fix(kpi): backfill skips or shrinks to the rollup watermark on failover restarts (plan R2-04 T4) Joseph Doherty 2026-07-13 10:03:33 -04:00
  • 91bde0fae6 fix(inbound): 415 guard and lenient JSON parse cover chunked (no Content-Length) bodies (plan R2-06 T6) Joseph Doherty 2026-07-13 10:01:22 -04:00
  • 84bc2380f3 fix(saf): standby assembles chunked resync, applies atomically with re-check, acks; N5 race documented (plan R2-02 T6) Joseph Doherty 2026-07-13 10:00:47 -04:00
  • b02c15bbca fix(security): import trust gate covers instance alarm-override trigger expressions — 5th call site is surface-complete (plan R2-05 T6) Joseph Doherty 2026-07-13 09:57:59 -04:00
  • 350d530135 fix(kpi): slice the rollup backfill into bounded 24h folds that yield to periodic folds (plan R2-04 T3) Joseph Doherty 2026-07-13 09:57:42 -04:00
  • fb9dc7ad14 fix(inbound): type SITE_UNREACHABLE on AskTimeoutException at the router await instead of message-substring sniffing (plan R2-06 T5) Joseph Doherty 2026-07-13 09:57:22 -04:00
  • 3b9f6b9572 docs(siteruntime): compile gate is synchronous by design; Expression alarms share the bounded script pool (plan R2-03 T7) Joseph Doherty 2026-07-13 09:56:45 -04:00
  • 3f937b399b fix(saf): chunk the resync snapshot to fit Akka remoting frames (additive protocol, byte-budgeted) (plan R2-02 T5) Joseph Doherty 2026-07-13 09:55:32 -04:00
  • 128d2bab73 perf(siteruntime): deploy gate + InstanceActor PreStart share one Roslyn compile via the compile cache (plan R2-03 T6) Joseph Doherty 2026-07-13 09:54:49 -04:00
  • b41b3b1b31 fix(esg): honor the declared response charset in ReadBodyBoundedAsync with UTF-8 fallback (plan R2-06 T4) Joseph Doherty 2026-07-13 09:53:00 -04:00
  • 1cc05f132f feat(siteruntime): bounded process-wide compiled-script cache, keyed on code hash + globals type (plan R2-03 T5) Joseph Doherty 2026-07-13 09:52:53 -04:00
  • f3bec6922a fix(siteruntime): eagerly validate TagSubscribeRetryIntervalMs + StuckScriptGraceMs at boot (plan R2-03 T4) Joseph Doherty 2026-07-13 09:51:37 -04:00
  • cc94b3a68c fix(esg): park buffered calls that fail deterministically with ArgumentException (path template/verb) instead of retrying to exhaustion (plan R2-06 T3) Joseph Doherty 2026-07-13 09:51:30 -04:00
  • 26dce8b69f fix(comm): heartbeat IsActive uses the shared oldest-Up predicate; Host wires one delegate everywhere (plan R2-02 T4) Joseph Doherty 2026-07-13 09:50:44 -04:00
  • 15018e4158 fix(siteruntime): faulted expression-eval task clears _evalInFlight instead of killing the AlarmActor trigger (plan R2-03 T3) Joseph Doherty 2026-07-13 09:50:40 -04:00
  • ab77094a26 fix(transport): script-artifact change publisher covers Add resolutions — delete-then-reimport no longer starves non-self-healing subscribers (plan R2-05 T5) Joseph Doherty 2026-07-13 09:50:32 -04:00
  • 9668600c38 docs(inbound): correct bus-consumer claims in tracker + invalidation-contract doc + CLAUDE.md (plan R2-06 T2) Joseph Doherty 2026-07-13 09:49:53 -04:00
  • db0285e2de fix(inbound): wire the compiled-handler cache as the IScriptArtifactChangeBus ApiMethod consumer (plan R2-06 T1) Joseph Doherty 2026-07-13 09:48:48 -04:00
  • f149626a76 fix(siteruntime): faulted expression-eval task clears _evalInFlight instead of killing the ScriptActor trigger (plan R2-03 T2) Joseph Doherty 2026-07-13 09:48:46 -04:00
  • 31fa5eafa4 perf(template-engine): read-only staleness/comparison paths skip Expression-trigger compiles — deploy gate remains the authoritative check (plan R2-05 T4) Joseph Doherty 2026-07-13 09:48:40 -04:00
  • 3a5b885a44 fix(saf): resync authority uses the shared oldest-Up predicate + delivery-gate delegate; apply-time re-check guard (plan R2-02 T3) Joseph Doherty 2026-07-13 09:48:37 -04:00
  • d233ecbe8f perf(template-engine): cache Expression-trigger compile verdicts under the trigger-surface key — unchanged expressions compile once per process (plan R2-05 T3) Joseph Doherty 2026-07-13 09:46:36 -04:00
  • 6e0fa21307 test(saf): failing two-node repro — leader-vs-oldest resync divergence wipes delivering node buffer (plan R2-02 T2) Joseph Doherty 2026-07-13 09:46:16 -04:00
  • 06d79f6516 fix(template-engine): verdict-cache key gains the globals-surface discriminator — cross-surface verdict reuse structurally impossible (plan R2-05 T2) Joseph Doherty 2026-07-13 09:45:54 -04:00
  • f25812fc7c fix(dcl): stale MxGateway event-loop fault on a cancelled token no longer flaps the fresh connection (plan R2-03 T1) Joseph Doherty 2026-07-13 09:45:20 -04:00
  • 5573a9eeb9 fix(template-engine): trigger-expression syntax check reports ALL violations/compile errors, not just the first (plan R2-05 T1) Joseph Doherty 2026-07-13 09:45:04 -04:00
  • a1c7c4ef26 feat(kpi): GetLatestRollupHourAsync watermark seam for the backfill fast-path (plan R2-04 T2) Joseph Doherty 2026-07-13 09:44:57 -04:00
  • 91209070d0 fix(comm): shared oldest-Up ActiveNodeEvaluator in Communication; Host evaluator delegates (plan R2-02 T1) Joseph Doherty 2026-07-13 09:43:22 -04:00
  • 90cdb6e51a chore(hygiene): root secret-capture guards — .gitignore patterns + opt-in pre-commit secret scan (plan R2-08 T3) Joseph Doherty 2026-07-13 09:42:49 -04:00
  • 29c1286943 fix(kpi): untracked projected fold fetch — fold reads no longer flood the change tracker (plan R2-04 T1) Joseph Doherty 2026-07-13 09:42:31 -04:00
  • 1429ddaa0e docs(plans): add MES alarm-status API draft plan (2026-06-30) Joseph Doherty 2026-07-13 01:45:50 -04:00
  • 5bbd7689fa docs(archreview): round-2 re-review (2026-07-12) + 8 fix plans (86 tasks) Joseph Doherty 2026-07-12 23:52:10 -04:00
  • 8c888f13a0 merge(deferred-10): aggregated live alarm stream for Alarm Summary Joseph Doherty 2026-07-10 13:01:04 -04:00
  • 5078d25302 docs(sitestream): document aggregated live alarm stream + resolve deferred #10 (plan #10 T8) Joseph Doherty 2026-07-10 12:49:44 -04:00
  • a8278f65d0 test(sitestream): end-to-end trace for site-wide alarm stream → live cache (plan #10 T7) Joseph Doherty 2026-07-10 12:44:11 -04:00
  • c4f97d0e87 feat(sitestream): validate live-alarm-cache options + active-aggregator/reconnect telemetry (plan #10 T6) Joseph Doherty 2026-07-10 12:33:40 -04:00
  • b91ed3c840 feat(alarm-summary): live-cache-driven updates with poll fallback (plan #10 T5) Joseph Doherty 2026-07-10 12:25:36 -04:00
  • c9fa3b07f4 docs(kpihistory): document hourly rollups + resolve deferred #22 (plan #22 T8) Joseph Doherty 2026-07-10 12:18:46 -04:00
  • 696a4ffea2 feat(sitestream): central transient per-site live alarm cache w/ seed-then-stream + failover (plan #10 T4) Joseph Doherty 2026-07-10 12:18:02 -04:00
  • bbfc1b3278 feat(kpihistory): add 30d/90d trend windows to Audit/SiteCalls/Notifications/Health (plan #22 T7) Joseph Doherty 2026-07-10 12:12:17 -04:00
  • bedf3c55f0 feat(kpihistory): one-shot rollup backfill of existing samples on recorder start (plan #22 T6) Joseph Doherty 2026-07-10 12:07:47 -04:00
  • a10170f365 feat(kpihistory): route long-range KPI queries to hourly rollups by threshold (plan #22 T5) Joseph Doherty 2026-07-10 12:01:59 -04:00
  • 4f145fd62a feat(kpihistory): hourly rollup recorder tick + rollup purge + options (plan #22 T4) Joseph Doherty 2026-07-10 11:58:50 -04:00
  • 09f67d1c65 feat(kpihistory): add hourly rollup fold + query + purge repository methods (plan #22 T3) Joseph Doherty 2026-07-10 11:50:53 -04:00
  • 6d5ecc92a5 feat(sitestream): add central SubscribeSiteAsync alarm-only client (plan #10 T3) Joseph Doherty 2026-07-10 11:49:49 -04:00
  • 9c631b47e1 feat(sitestream): add additive SubscribeSite alarm-only gRPC stream + server handler (plan #10 T2) Joseph Doherty 2026-07-10 11:46:36 -04:00
  • ccdc649641 feat(kpihistory): classify KPI metrics gauge-vs-rate for hourly rollups (plan #22 T2) Joseph Doherty 2026-07-10 11:45:54 -04:00
  • 0f5e70fd35 feat(kpihistory): add KpiRollupHourly table + EF config + migration (plan #22 T1) Joseph Doherty 2026-07-10 11:41:58 -04:00
  • b14a4dbc6b feat(sitestream): add SubscribeSiteAlarms site-wide alarm-only broadcast (plan #10 T1) Joseph Doherty 2026-07-10 11:39:42 -04:00
  • 84112db344 docs(plans): add implementation plans for deferred #10 (aggregated live alarm stream) and #22 (KPI hourly rollups) Joseph Doherty 2026-07-10 11:36:35 -04:00
  • 22136d36d9 feat(testrun): route WaitForAttribute in the Test-Run sandbox (deferred #14) Joseph Doherty 2026-07-10 09:29:38 -04:00
  • 4cd21b342b feat(auditlog): make SiteAuditBacklogReporter cadence configurable (deferred #21) Joseph Doherty 2026-07-10 08:56:32 -04:00
  • f480a56737 feat(instance): native-alarm-source-override CSV bulk import (deferred #12) + doc fixes Joseph Doherty 2026-07-10 08:52:12 -04:00
  • 5a878b78d4 docs(xml): fill missing XML doc comments + strip task-tracking refs across src (fixdocs) Joseph Doherty 2026-07-10 08:23:56 -04:00
  • 75007b9edd docs(archreview): sync Status Board — PLAN-08 Complete (11/11); INITIATIVE COMPLETE (191/192, sole gap = PLAN-07 T33 documented skip) Joseph Doherty 2026-07-10 07:15:08 -04:00
  • d8487eab2d docs: close arch-review 08 drift batch — Commons Observability folder, site-repo exception, csproj separator, docs/components scope, DelmiaNotifier convention exception Joseph Doherty 2026-07-10 06:57:34 -04:00
  • d61881ffaf refactor(site-runtime): excise vestigial site-side notification-list surface — repo, DI registration, dead write paths (arch-review 08 §1.3/#23) Joseph Doherty 2026-07-10 06:59:45 -04:00
  • 7ff1263ac0 docs(plans): deferred-work register — triage the 23-item arch-review inventory into fix-now (plan-owned) vs deferred-with-rationale Joseph Doherty 2026-07-10 06:47:44 -04:00
  • e156c7fa8a test(commons): contract-lock tests for top ClusterClient records — enforce additive-only evolution under version skew (arch-review 08 §1.8) Joseph Doherty 2026-07-10 06:49:00 -04:00
  • fcc9c7bf8e test(perf): failover-timing harness placeholder documenting the 25s envelope protocol, pending PLAN-01 two-node rig (arch-review 08 §2.3) Joseph Doherty 2026-07-10 06:47:26 -04:00
  • b879e51541 test(perf): site-wide stream throughput measurement — first real perf-envelope test (arch-review 08 §2.3) Joseph Doherty 2026-07-10 06:47:55 -04:00
  • 6bf9dfb3c5 feat(options): eager startup validation for central-component options (Transport, SiteCallAudit, DeploymentManager) (arch-review 08 §1.5) Joseph Doherty 2026-07-10 06:52:07 -04:00
  • fc918d4679 feat(options): eager startup validation for edge/management options (InboundAPI, ESG, Notification, ManagementService) (arch-review 08 §1.5) Joseph Doherty 2026-07-10 06:52:59 -04:00
  • 8b775f4ae1 feat(options): eager startup validation for site-pipeline options (SiteRuntime, S&F, SiteEventLog) (arch-review 08 §1.5) Joseph Doherty 2026-07-10 06:51:05 -04:00
  • af2cfde484 feat(options): eager startup validation for Communication + DataConnectionLayer options (arch-review 08 §1.5) Joseph Doherty 2026-07-10 06:48:06 -04:00
  • 187fbd7cc8 docs(archreview): sync Status Board — PLAN-07 Complete (32/32 active, T33 skipped); initiative 181/192 Joseph Doherty 2026-07-10 06:38:18 -04:00
  • 884f9127b2 test(commons): update AuditKind lock-in test to 16 members (SecuredWriteExpire from T15) Joseph Doherty 2026-07-10 06:16:07 -04:00
  • 4887461b64 chore(management): log debug-stream push failures; fix event-log filter docs; refresh stale SourceNode note (arch-review S5/C7/C8) Joseph Doherty 2026-07-10 06:07:19 -04:00
  • d6bad1738e fix(management): single-flight transport bundle commands + drop redundant export copy (arch-review S4) Joseph Doherty 2026-07-10 06:04:22 -04:00
  • 433c6db4ec feat(cli): browse/search/verify-endpoint/cert-trust commands — actor parity (arch-review C4) Joseph Doherty 2026-07-10 05:51:49 -04:00
  • d8a39f3c35 feat(ui): secured-write history paging + submission age in approve dialog (arch-review S2/P3) Joseph Doherty 2026-07-10 05:51:20 -04:00
  • 655834f0b8 feat(management): additive Skip/Take paging on template/instance lists (arch-review P2) Joseph Doherty 2026-07-10 05:57:14 -04:00
  • 8221ee797e fix(management): canonicalize role-mapping casing at write path, closing UI/actor case split (arch-review C5) Joseph Doherty 2026-07-10 05:52:45 -04:00
  • 83e09fc210 fix(management): honor MgmtDeployArtifactsCommand.SiteId + enforce site scope (arch-review C2) Joseph Doherty 2026-07-10 05:51:03 -04:00
  • 5b00c049f8 test(management): dispatch-coverage test — every registered command has a handler (arch-review UA2) Joseph Doherty 2026-07-10 05:38:07 -04:00
  • 61df8a28fe test(management): frozen GetRequiredRoles matrix over every registered command (arch-review UA2) Joseph Doherty 2026-07-10 05:36:32 -04:00
  • 8d4ffa7ef1 feat(management): secured-write list paging with TotalCount (arch-review P3) Joseph Doherty 2026-07-10 05:42:35 -04:00
  • 03295e91bb feat(management): opportunistic expiry sweep on secured-write list (arch-review S2) Joseph Doherty 2026-07-10 05:39:29 -04:00
  • 064a7d9415 feat(management): server-side secured-write TTL — stale pending writes expire, never execute (arch-review S2) Joseph Doherty 2026-07-10 05:38:19 -04:00
  • b3e2294e1d chore(deploy): ship ManagementService command-timeout config to all central-node topologies (arch-review S1) Joseph Doherty 2026-07-10 05:20:31 -04:00
  • 5415e6566f feat(management): Admin-gated actor dispatch for cert-trust commands (arch-review C4) Joseph Doherty 2026-07-10 05:29:57 -04:00
  • 722063638b feat(management): actor dispatch for BrowseNode/SearchAddressSpace/VerifyEndpoint — CLI parity (arch-review C4) Joseph Doherty 2026-07-10 05:27:48 -04:00
  • 51cff07753 fix(management): reconcile area role gate to Designer|Deployer across actor and all three docs (arch-review C6) Joseph Doherty 2026-07-10 05:23:57 -04:00
  • 75bf14a35a chore(ui): memoize AlarmSummary rows + keyboard/aria-sort on sortable headers (arch-review P4/UA6) Joseph Doherty 2026-07-10 05:15:36 -04:00
  • 7af36fd5dc feat(security): wire LoginThrottle into management Basic-Auth and /auth/login|token — password-spray guard (arch-review P1/UA5) Joseph Doherty 2026-07-10 05:13:59 -04:00
  • d4d1732a9e fix(management): elide DatabaseConnection ConnectionString from List/Get (arch-review C3) Joseph Doherty 2026-07-10 05:15:55 -04:00
  • ecf8ac1b7d fix(management): elide ExternalSystem AuthConfiguration from responses and audit (arch-review C3) Joseph Doherty 2026-07-10 05:14:04 -04:00
  • 3a1980cb4c fix(management): elide DataConnection config secrets from responses and audit (arch-review C3) Joseph Doherty 2026-07-10 05:12:29 -04:00
  • adc488a9f9 fix(ui): reentrancy guard on Health/AlarmSummary poll timers (arch-review S3) Joseph Doherty 2026-07-10 05:01:27 -04:00
  • bd6c310825 feat(security): LoginThrottle — per-username+IP LDAP-bind failure lockout (arch-review P1) Joseph Doherty 2026-07-10 05:01:05 -04:00
  • fb491a5342 feat(commons): additive SiteIdentifier on browse/verify/cert-trust commands for management-API routing (arch-review C4) Joseph Doherty 2026-07-10 05:01:19 -04:00
  • 7206761cb4 fix(management): 5-min Ask timeout for transport/deploy commands (arch-review S1) Joseph Doherty 2026-07-10 05:00:11 -04:00
  • 0fad6817c2 feat(config-db): secured-write TryMarkExpiredAsync CAS + CountAsync (arch-review S2/P3) Joseph Doherty 2026-07-10 05:00:23 -04:00
  • 5cfa85ea91 feat(management): ConfigSecretScrubber for connection-config secret elision Joseph Doherty 2026-07-10 05:01:59 -04:00
  • efa6ac223c feat(deployment): DeployToSiteAsync for single-site artifact deployment Joseph Doherty 2026-07-10 04:59:35 -04:00
  • 6c9de9f7ab feat(management): any-of role gates; restrict ListSecuredWrites to Operator/Verifier/Admin (arch-review UA1) Joseph Doherty 2026-07-10 05:03:51 -04:00
  • 4fb754f9f6 docs(archreview): sync Status Board — PLAN-06 Complete/merged (3e964ac2); initiative 152/192 Joseph Doherty 2026-07-10 04:52:08 -04:00