Adopt ZB.MOM.WW.LocalDb 0.3.7 (scadaproj#53) #130

Closed
opened 2026-11-12 13:44:20 -05:00 by dohertj2 · 1 comment
Owner

Adopt ZB.MOM.WW.LocalDb 0.3.7 (published 2026-11-12), tracking dohertj2/scadaproj#53.

  • Bump the 0.3.4 pins in Directory.Packages.props to 0.3.7.
  • 0.3.6 (scadaproj#36): the library sync service now enforces LocalDb:Replication:ApiKey itself. The host LocalDbSyncAuthInterceptor stays for its refuse-when-blank rule. Every replicated pair must carry the same key on both nodes.
  • 0.3.7 (scadaproj#16): a tombstone is held until the peer has it, so no resurrection after a long outage. The cost is ledger growth while a peer is down. Optional TombstoneHardCap.
  • Deploy notes: stop and start the pair together, set the key on both nodes.
Adopt ZB.MOM.WW.LocalDb 0.3.7 (published 2026-11-12), tracking dohertj2/scadaproj#53. - Bump the `0.3.4` pins in `Directory.Packages.props` to `0.3.7`. - 0.3.6 (scadaproj#36): the library sync service now enforces `LocalDb:Replication:ApiKey` itself. The host `LocalDbSyncAuthInterceptor` stays for its refuse-when-blank rule. Every replicated pair must carry the same key on both nodes. - 0.3.7 (scadaproj#16): a tombstone is held until the peer has it, so no resurrection after a long outage. The cost is ledger growth while a peer is down. Optional `TombstoneHardCap`. - Deploy notes: stop and start the pair together, set the key on both nodes.
dohertj2 added the type:followuppriority:p2cross-repo labels 2026-11-12 13:44:20 -05:00
Author
Owner

Done in main @ 12fa7aff. LocalDb, .Replication and .Contracts are pinned at 0.3.7. No code or config change was needed. The rig site-a pair already uses one identical sync key on both nodes. LocalDbSyncAuthInterceptor is kept for its refuse-when-blank rule, and its doc comment now notes the library check from 0.3.6.

The deploy notes are in topology-guide, installation-guide, Component-StoreAndForward and CLAUDE.md:

  • Stop and start the pair together.
  • Set the same LocalDb:Replication:ApiKey on both nodes.
  • The tombstone ledger (sf_messages, site_events) grows while a peer is down. TombstoneHardCap is optional.

Tests (Release): 11,188 passed, 0 failed across 29 assemblies. That includes IntegrationTests 126 (the LocalDb site-pair harness) and Host.Tests 687 (the interceptor). The 185 CentralUI.PlaywrightTests all fail on ECONNREFUSED localhost:3000 because no Playwright browser server is running. That is environmental and unrelated. Not deployed. Parent: dohertj2/scadaproj#53.

Done in `main` @ `12fa7aff`. LocalDb, .Replication and .Contracts are pinned at `0.3.7`. No code or config change was needed. The rig site-a pair already uses one identical sync key on both nodes. `LocalDbSyncAuthInterceptor` is kept for its refuse-when-blank rule, and its doc comment now notes the library check from 0.3.6. The deploy notes are in topology-guide, installation-guide, Component-StoreAndForward and CLAUDE.md: - Stop and start the pair together. - Set the same `LocalDb:Replication:ApiKey` on both nodes. - The tombstone ledger (`sf_messages`, `site_events`) grows while a peer is down. `TombstoneHardCap` is optional. Tests (Release): 11,188 passed, 0 failed across 29 assemblies. That includes IntegrationTests 126 (the LocalDb site-pair harness) and Host.Tests 687 (the interceptor). The 185 CentralUI.PlaywrightTests all fail on ECONNREFUSED localhost:3000 because no Playwright browser server is running. That is environmental and unrelated. Not deployed. Parent: dohertj2/scadaproj#53.
Sign in to join this conversation.