Skip to content

#2136: gate + reset the cadence-warn Settings box (nightly wiring-test catch) - #2142

Merged
erikdarlingdata merged 1 commit into
devfrom
cadence-box-wiring-2136
Aug 9, 2026
Merged

erikdarlingdata merged 1 commit into
devfrom
cadence-box-wiring-2136

Conversation

@erikdarlingdata

Copy link
Copy Markdown
Owner

The nightly's AlertSettingsControlWiringTests source-scan caught AlertStoreJobCadenceWarnPercentBox (added in #2141) loaded but absent from both UpdateAlertControlStates (unchecking Alerts Enabled left it editable) and RestoreAlertDefaultsButton_Click (Restore Defaults left a stale value). Both call sites added, matching its #2107 siblings — exactly the forgotten-call-site class that test exists to catch.

The same nightly run also failed TimescaleSupportTests.EndToEnd_DetectConvertAndDropChunksPurge_AgainstDevPostgres on a 40P01 deadlock between the retention purge's drop_chunks and a background job on the shared dev store (the DELETE fallback deadlocked too) — unrelated to #2140/#2141, flaky-shaped, will re-kick the nightly after this merges and file the test-hardening item separately.

… catch)

The AlertSettingsControlWiringTests source-scan caught what PR CI's fast
path missed: AlertStoreJobCadenceWarnPercentBox was loaded from the store
but absent from UpdateAlertControlStates (unchecking Alerts Enabled left it
editable) and from RestoreAlertDefaultsButton_Click (Restore Defaults left
a stale value). Both call sites added, matching its #2107 siblings.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@claude

claude Bot commented Aug 9, 2026

Copy link
Copy Markdown

Reviewed. This is a clean, minimal fix — nothing to flag.

  • Correctness: AlertStoreJobCadenceWarnPercentBox is now wired into both UpdateAlertControlStates (gating) and RestoreAlertDefaultsButton_Click (reset), matching the box's existing presence in SeedAlertControlsFrom (load) and the BuildAlertRowFromControls parse/clamp site. That's all four call sites AlertSettingsControlWiringTests.EveryLoadedThresholdBox_IsAlsoGatedAndReset requires, and the added default ("25") matches DarlingConfig.StoreJobCadenceWarnPercent's default, the XAML's Text="25", and the test harness default in DarlingSelfAlertTests.cs — no drift.
  • Pattern consistency: matches the #2107 sibling boxes immediately above/below it in both methods exactly (comment block included).
  • Lite/Darling parity: no parity gap — the store-job-cadence alert is a Darling-only concept (it alerts on the shared Postgres store's own TimescaleDB background jobs), which Lite has no equivalent of, same as its #2107 siblings (AlertCollectionFailureThresholdBox, AlertCollectionStaleMinutesBox, etc.) and the wiring test itself acknowledges the two apps' control sets legitimately differ.
  • Security/performance: no input handling, secrets, or I/O surface touched; purely UI state wiring.

No inline comments needed.

@erikdarlingdata
erikdarlingdata merged commit 572b86d into dev Aug 9, 2026
5 checks passed
@erikdarlingdata
erikdarlingdata deleted the cadence-box-wiring-2136 branch August 9, 2026 20:50
dphugo pushed a commit to dphugo/PerformanceMonitor that referenced this pull request Aug 19, 2026
config_service.query_store_backfill_enabled (V58, default TRUE), read
live each backfill cycle through the store-reload seam and transition-
logged. Viewer: Settings checkbox beside plan capture, probe sentinel +
V58 gate rung, and the control-plane migration carries the store's
current value through so importing MCP settings can never flip an
operator's switch. The parameter has NO default on the update path -
every caller states it (the erikdarlingdata#2142 silent-reset class).

Field driver: 2026-08-10 consolidation - a freshly restored catalog put
the backfill into sustained 64MB drains against a cross-region 4-core
production primary (ASYNC_NETWORK_IO dominated) with no stop that
didn't also gut plan capture fleet-wide.

Lite parity is deliberately deferred (its backfill shares the class but
Lite has no global settings surface to hang the toggle on) - erikdarlingdata#2167
stays open for that half.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant