Files
ScadaBridge/docs/plans/phase-8-checklist.md
T
Joseph Doherty 2b80a6defa test(perf): measure phase-8 WP-4 residual criteria xc-3/4/5/8 (#49)
New ResidualBench tool (eventlog, flatten, audit, audit-contention) and
docker/measure-ui-responsiveness.sh. All four residuals pass; results in
docs/plans/2026-11-10-wp4-residual-scope-results.md. Findings filed as
#122, #123 and #124 (fixed in the following commit).
2026-11-10 16:46:42 -05:00

51 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Phase 8 Execution Checklist
**Update 2026-08-07 (truth sweep):** This checklist previously read
"Status: Complete / Tests: All passing / Build: 0 errors, 0 warnings" — a
107-byte stub with no per-work-package results and no linked run. That claim
was **unevidenced** and was retired.
**Update 2026-08-15 (WP-4 run, evidenced):** The target-scale load test has now
actually been run, at full scale, with results published.
## WP-4 — Load/Performance Testing at Target Scale
**Status: measured 2026-08-15.** Not a claim — a run.
- Scale executed: **10 sites × 500 instances × 75 tags = 375,000 live tag
subscriptions**, 37,518 tag updates/second achieved against 37,500 nominal
(100.0%), **45,021,375 updates** offered over a 20-minute steady-state window.
- Headline results: end-to-end tag update latency **P50 0.88 ms / P99 4.57 ms /
max 37.41 ms**; **zero events dropped** at 100 live stream subscribers; health
report collect+ingest **P99 0.31 ms** with 10/10 sites tracked centrally;
debug view snapshot under load **P99 2.19 ms with 0 timeouts**; 500 instances
deployed to a site in **2.6 s**; CPU **2.9% of the box**; working-set slope
**+8.83 MB/min**.
- **11 clean passes, 1 pass with a documented caveat, 0 failures.**
- Deferred-work register **#25** and **row 50** are closed by this run.
**Results:** `2026-08-15-target-scale-load-test-results.md` — per-criterion
numbers vs thresholds, three findings (F1 memory-window limitation, F2 the S&F
retry-interval wait, F3 slow-subscriber isolation), and an explicit "what this
does not prove" section.
**Design, thresholds and deviations:**
`2026-08-15-target-scale-load-test-design.md` — including the documented
deviation from the protocol's 1-hour sustained window to 20 minutes, and the
command for the full 1-hour version.
**Harness:** `tests/ZB.MOM.WW.ScadaBridge.LoadHarness/` (standalone executable),
with a CI-scale smoke `[Fact]` at
`tests/ZB.MOM.WW.ScadaBridge.PerformanceTests/TargetScale/TargetScaleHarnessSmokeTests.cs`
so the evidence can be regenerated rather than bit-rotting.
**Still open within WP-4** (not covered by this harness — central-cluster and
browser concerns): `[xc-3]` site event logging volume within 30-day/1 GB limits,
`[xc-4]` audit logging not degrading central, `[xc-5]` template
flattening/validation for large templates, `[xc-8]` UI workflow responsiveness.
**Covered 2026-11-10 (#49):** all four measured and passed — results
`docs/plans/2026-11-10-wp4-residual-scope-results.md` (follow-ups #122, #123, #124).
See `phase-8-production-readiness.md:152-170` (WP-4) and `:314-320`
(test protocol) for the original scope.