19ab0ac913
chore(localdb): record tasks 5-6 completion, the latent directory defect, and the CreateConnection contract change
Joseph Doherty
2026-07-20 03:06:06 -04:00
f2efeb37b7
refactor(sf,site): both stores take ILocalDb instead of a connection string
Joseph Doherty
2026-07-20 03:05:45 -04:00
3dfb288b74
chore(localdb): record tasks 3-4 completion and their deviations in the task state
Joseph Doherty
2026-07-20 02:21:09 -04:00
ac5eb12cce
refactor(site): extract SiteStorageSchema.Apply from SiteStorageService
Joseph Doherty
2026-07-20 02:20:50 -04:00
9e3239c5d9
refactor(sf): extract StoreAndForwardSchema.Apply from the storage class
Joseph Doherty
2026-07-20 02:18:05 -04:00
12eb97e07a
docs(localdb): close the phase 2 gate — questions answered, plan written
Joseph Doherty
2026-07-20 02:15:53 -04:00
d512572dac
docs(localdb): phase 2 resume state — where the plan stands and what carries forward
Joseph Doherty
2026-07-20 02:01:42 -04:00
8652eab98e
fix(localdb): root-cause the soak disk-I/O failure + ship the hardening follow-ups
Joseph Doherty
2026-07-20 02:01:00 -04:00
e9e11d635e
docs(known-issues): root-cause brief for the LocalDb disk-I/O-error-under-load defect
Joseph Doherty
2026-07-20 01:11:08 -04:00
82c869a1df
docs(localdb): record the phase 2 task-1 gate verdict in the task record
Joseph Doherty
2026-07-20 01:07:18 -04:00
fc553bd9ba
docs(localdb): phase 2 rig soak findings — GATE FAILS on a phase 1 defect
Joseph Doherty
2026-07-20 01:06:59 -04:00
cf46e59680
fix(rig): seed LDAP group mappings with the canonical role names
Joseph Doherty
2026-07-19 17:55:04 -04:00
25463d522f
docs(localdb): phase 2 plan review pass — corrections from code verification
Joseph Doherty
2026-07-19 17:27:11 -04:00
f6ca82a9e2
docs(localdb): phase 2 implementation plan (21 tasks, full scope)
Joseph Doherty
2026-07-19 15:04:37 -04:00
b64857c8d6
docs(localdb): Phase 2 gate + final Phase 1 task record
Joseph Doherty
2026-07-19 10:00:50 -04:00
568735a41e
docs(localdb): Phase 1 truth pass
Joseph Doherty
2026-07-19 09:51:55 -04:00
95c108f1d7
fix(localdb): allowlist the replication meter + record the Task 12 live gate
Joseph Doherty
2026-07-19 09:50:11 -04:00
9cf7c0f007
feat(localdb): enable replication on the site-a rig pair
Joseph Doherty
2026-07-19 09:43:04 -04:00
3c395d794a
test(localdb): two-node site-pair convergence over a real gRPC transport
Joseph Doherty
2026-07-19 09:42:21 -04:00
98b94771ae
feat(localdb): one-time migrator for the pre-Phase-1 site databases
Joseph Doherty
2026-07-19 09:36:38 -04:00
59c695191c
feat(localdb): fail-closed auth on the sync endpoint + replication health signal
Joseph Doherty
2026-07-19 09:29:22 -04:00
e62b076f2e
docs(localdb): record wave 4 completion (Tasks 4, 5a, 7) + known flakes
Joseph Doherty
2026-07-19 09:15:52 -04:00
a560e9eaf9
feat(localdb): wire 2-node replication for the site database, default OFF
Joseph Doherty
2026-07-19 09:15:26 -04:00
0d8a80aa27
feat(localdb): rewire SiteEventLogger onto the consolidated site database
Joseph Doherty
2026-07-19 09:07:49 -04:00
0b5e9b44f6
feat(localdb): rewire OperationTrackingStore onto the consolidated site database
Joseph Doherty
2026-07-19 08:59:38 -04:00
2bff527247
docs(localdb): record Task 3 completion
Joseph Doherty
2026-07-19 03:37:03 -04:00
2977e6c45c
feat(localdb): register the consolidated site database in the composition root
Joseph Doherty
2026-07-19 03:36:54 -04:00
2742d54c9f
docs(localdb): record Task 1/2/5b completion + prerequisite commits
Joseph Doherty
2026-07-19 03:15:50 -04:00
727fa48cba
feat(localdb): move site_events to application-minted GUID ids
Joseph Doherty
2026-07-19 03:15:17 -04:00
f056b67e9a
fix(build): suppress AngleSharp advisory instead of pinning (corrects ecf6b628)
Joseph Doherty
2026-07-19 03:14:58 -04:00
040cd9a66c
docs(docker): record live failover-drill results — standby PASS (27s removal, 0 routing blips), active outage 9s + 4s recovery (R2-01 live drill on 99544985)
Joseph Doherty
2026-07-13 12:01:00 -04:00
9954498548
docs(archreview): mark round-2 initiative COMPLETE — 8 plans merged to main @ 1930f19b (2026-07-13)
Joseph Doherty
2026-07-13 11:49:58 -04:00
1930f19b1a
fix(test): relax exact compile-cache hit-count assertion to >= 1
Joseph Doherty
2026-07-13 11:24:06 -04:00
53889aec9f
fix(test): set ScadaBridge:Node:NodeName in IntegrationTests host-boot config
Joseph Doherty
2026-07-13 11:24:06 -04:00
ccee558ca7
merge(r2): r2-plan08
Joseph Doherty
2026-07-13 11:10:15 -04:00
ca4b0dd849
merge(r2): r2-plan04
Joseph Doherty
2026-07-13 11:09:36 -04:00
699af8fc16
merge(r2): r2-plan06
Joseph Doherty
2026-07-13 11:09:24 -04:00
84fdea60cf
merge(r2): r2-plan05
Joseph Doherty
2026-07-13 11:08:27 -04:00
3ad5ad0d7e
merge(r2): r2-plan03
Joseph Doherty
2026-07-13 11:08:27 -04:00
774e3918db
merge(r2): PLAN-R2-07 UI/Management/Security
Joseph Doherty
2026-07-13 11:08:10 -04:00
b7f5470666
merge(r2): PLAN-R2-01 Cluster/Host/Failover
Joseph Doherty
2026-07-13 11:08:10 -04:00
9b8ce0f51e
merge(r2): PLAN-R2-02 Communication & S&F (Critical N1)
Joseph Doherty
2026-07-13 11:08:10 -04:00
2751a6dba9
test(management): freeze scrubber fragment coverage over DataConnection config types + document array-merge limit (plan R2-07 T12)
Joseph Doherty
2026-07-13 11:05:19 -04:00
1b88ca1296
fix(security): amortize LoginThrottle.Prune off the failed-bind hot path (plan R2-07 T11)
Joseph Doherty
2026-07-13 11:03:26 -04:00
5b16429635
fix(sitestream): deathwatch resets live-cache liveness on aggregator termination (plan R2-07 T10)
Joseph Doherty
2026-07-13 11:01:54 -04:00
56d39b5fce
fix(host): site singletons (deployment-manager, event-log-handler) via SingletonRegistrar — PhaseClusterLeave drains for site SQLite writes (plan R2-01 T11)
Joseph Doherty
2026-07-13 11:01:44 -04:00
4f39cfd6c6
docs(plans): re-consolidate deferral tracking — SBR gap + wonder-app overlay rows into the register, prune landed Fix-now rows, repoint the fired perf-envelope trigger at PLAN-R2-01 (plan R2-08 T10, arch-review 08r2 NF5)
Joseph Doherty
2026-07-13 11:00:11 -04:00
80b967681e
chore(hygiene): fix stale area-export comment in EntitySerializer.FromBundleContent — areas travel by name since PLAN-05 (plan R2-08 T12, arch-review 08r2 NF6)
Joseph Doherty
2026-07-13 10:58:52 -04:00
76ef97f729
fix(ui): disposal guard on Alarm Summary live callback, matching the DebugView pattern (plan R2-07 T9)
Joseph Doherty
2026-07-13 10:58:50 -04:00
7943d73e71
fix(options): canonicalize Communication/DataConnection config sections to ScadaBridge:*; drop the duplicate Host bindings that were masking the drift (plan R2-08 T9, arch-review 08r2 NF8)
Joseph Doherty
2026-07-13 10:58:28 -04:00
925c869826
fix(ui): Alarm Summary poll defers row rebuilds to the live path while IsLive (plan R2-07 T8)
Joseph Doherty
2026-07-13 10:57:09 -04:00
d33337a834
fix(ui): drop stale-site poll results on Alarm Summary site switch (plan R2-07 T7)
Joseph Doherty
2026-07-13 10:55:25 -04:00
973e59de84
fix(options): bind + validate OperationTrackingOptions; register the site IOperationTrackingStore that two comments claimed AddSiteRuntime provides (plan R2-08 T8, arch-review 08r2 NF4)
Joseph Doherty
2026-07-13 10:53:27 -04:00
1fcfa4fb16
fix(security): scope-filter secured-write listing + align spec with enforced site scoping (plan R2-07 T6)
Joseph Doherty
2026-07-13 10:53:16 -04:00
80e5b36852
refactor(host): CentralSingletonRegistrar -> SingletonRegistrar with optional role scope — unblocks site-singleton drains (plan R2-01 T10)
Joseph Doherty
2026-07-13 10:49:49 -04:00
4a0462e4d0
fix(options): validate Host Node/Database/Logging options at startup — empty NodeName fails fast instead of NULLing SourceNode (plan R2-08 T7, arch-review 08r2 NF4)
Joseph Doherty
2026-07-13 10:49:42 -04:00
92936747b7
fix(security): additive permitted-sites filter on secured-write query/count (plan R2-07 T5)
Joseph Doherty
2026-07-13 10:48:45 -04:00
c2707fdcf8
docs(health): CentralHealthReportLoop comments say oldest-member, not cluster leader — stop re-teaching the S2 conflation (plan R2-01 T9)
Joseph Doherty
2026-07-13 10:46:18 -04:00
9b9222d223
fix(security): enforce LDAP-mapping site scope on secured-write submit/approve/reject (plan R2-07 T4)
Joseph Doherty
2026-07-13 10:46:08 -04:00
11efe4be05
fix(health): flag metrics-stale for never-reported sites via FirstSeenAt anchor — null LastReportReceivedAt no longer skips the check (plan R2-01 T8)
Joseph Doherty
2026-07-13 10:45:22 -04:00
e4765b2eed
docs(tracker): correct the wonder-app-vd03 deferral record — artifact is present (gitignored); overlay edits applied on-disk by R2-01 T5/T6 (plan R2-01 T7)
Joseph Doherty
2026-07-13 10:42:38 -04:00
f85f036b09
fix(options): eager startup validation for AuditLog central sub-options — PartitionMaintenance, Purge, Reconciliation (plan R2-08 T6, arch-review 08r2 NF4)
Joseph Doherty
2026-07-13 10:39:03 -04:00
b532a1e30e
fix(security): trusted-proxy ForwardedHeaders so LoginThrottle keys on the real client IP (plan R2-07 T2)
Joseph Doherty
2026-07-13 10:38:41 -04:00
65e0f770d1
test(failover): unskip FailoverTimingTests on the two-node rig at production timings — measured 33.7s vs ~25s design envelope (plan R2-01 T4; covers report-08 NF2)
Joseph Doherty
2026-07-13 10:38:19 -04:00
e0dddac0be
fix(options): eager startup validation for AuditLog site sub-options — SiteWriter, SiteTelemetry, SiteRetention (plan R2-08 T5, arch-review 08r2 NF4)
Joseph Doherty
2026-07-13 10:36:46 -04:00
e1a692016e
fix(security): throttle DebugStreamHub LDAP bind via ManagementAuthenticator + correct coverage doc (plan R2-07 T1)
Joseph Doherty
2026-07-13 10:36:32 -04:00
30356803e7
docs(docker): mark failover-drill results table PENDING — live drill run (plan R2-01 T3) deferred to avoid disrupting the running docker cluster
Joseph Doherty
2026-07-13 10:34:24 -04:00
d536450611
docs(cluster): per-direction failover truth — first-seed bootstrap constraint + operator recovery actions; drop the undeliverable ~25s active-crash promise (plan R2-01 T2)
Joseph Doherty
2026-07-13 10:33:56 -04:00
badc97afe8
fix(docker): failover drill kills the STANDBY by default; active mode measures the registered keep-oldest outage instead of pretending recovery (plan R2-01 T1)
Joseph Doherty
2026-07-13 10:32:54 -04:00