docs(plans): close residuals #4 (R3) and #5 (R4); register rows 35-39 for their findings

This commit is contained in:
Joseph Doherty
2026-08-15 03:35:39 -04:00
parent 87f244508a
commit 58a6d47c93
2 changed files with 21 additions and 5 deletions
@@ -108,11 +108,22 @@ Deliberately not fixed in this program — each has a stated reason, not an over
3. **Event batching per proto message.** Individual `AttributeValueChanged`/`AlarmStateChanged`
events still ride one gRPC message each; batching them is a new wire shape (proto + both
client/server), deferred rather than folded into this program's additive-only changes.
4. **Deployments page server-side paging + status counts.** Still client-materializes the full
list; out of scope for this pass (WP2.5 touched the deploy pipeline, not this specific UI
surface).
5. **OtOpcUa still pins LocalDb 0.1.3.** A supported skew — 0.1.x peers sync with 0.2.x under the
library's wire-compatibility guarantee — not a blocker for this program.
4. ~~**Deployments page server-side paging + status counts.**~~ **RESOLVED 2026-08-15
(`35ce1413`, R3).** The Deployments page is database-paged: `QueryDeploymentListPageAsync`
returns one instance-joined page + the filtered total, `GetDeploymentStatusCountsAsync`
returns the tiles from one grouped aggregation, and site scoping runs in SQL. Offset paging
(not keyset) because the numbered jump-to-page pager needs a total, which a cursor cannot
express, and the retention purge bounds the table — mirrors the Notification Outbox
precedent; `DeployedAt DESC, Id DESC` tie-break keeps offset pages stable. Whole-table
`GetAllDeploymentRecordsAsync` deleted with its last caller. Tiles double as the status
filter; 500 ms trailing-edge debounced search. 34 new tests; `Component-CentralUI.md` updated.
5. ~~**OtOpcUa still pins LocalDb 0.1.3.**~~ **RESOLVED 2026-08-15 (OtOpcUa branch
`localdb-bump`, commit `a1a258d8`, R4).** Bumped 0.1.3 → 0.2.1 (newest on the feed at the
time). Pure pin bump — no code change; all 0.2.x additions are additive and unused there.
Also corrected OtOpcUa's now-false `MaxBatchSize = 16` "row-count vs gRPC 4 MB" rationale in
5 places (kept at 16 as the DB read-page bound per finding F2) and documented
`MaxBatchBytes`. Full 57-project suite green bar one unrelated pre-existing flake (register
row 38). Two OtOpcUa-side findings recorded as register rows 3839.
6. **Fragile `SandboxTests` timing pin.** Pre-existing, unrelated to this remediation's changes;
noted so it isn't mistaken for a regression if it flakes later.
7. ~~**Target-scale load test (deferred-work register #25).**~~ **RESOLVED 2026-08-15.** The