diff --git a/archreview/plans/R3-02-stale-good-family-plan.md b/archreview/plans/R3-02-stale-good-family-plan.md index 54fd096e..af4c66aa 100644 --- a/archreview/plans/R3-02-stale-good-family-plan.md +++ b/archreview/plans/R3-02-stale-good-family-plan.md @@ -848,3 +848,32 @@ this plan each appended last: (`Stopping_a_never_connected_child_announces_nothing`). - With R3-03 merged the recovery leg holds: `PostStop` → host latches Bad → R3-03's `SpawnChild` always sends the desired set → the fresh child subscribes → the driver's initial push clears the latch. + +### T18 — full-suite sweep + bookkeeping + +- **Full-solution unit sweep green** (`dotnet test ZB.MOM.WW.OtOpcUa.slnx`): every project `Failed: 0`. + Notable per-project counts after this branch: `Commons.Tests` 348, `OpcUaServer.Tests` 498/1 skipped, + `Driver.Mqtt.Tests` 803, `Driver.Calculation.Tests` 64, `Core.ScriptedAlarms.Tests` 94, + `Core.Abstractions.Tests` (incl. the new `InputQualityTests`) green, `Runtime.Tests` 672/3 skipped. + Docker-gated integration suites skip cleanly as usual (Modbus 34 skipped, S7 3, AbCip 3, Galaxy 8, + Historian.Gateway 6). +- **`Runtime.Tests` × 5** for the #500 flake profile: **four runs 672 passed / 3 skipped**; one run + reported **1 failure** whose test name was lost to an output filter on that invocation. Not reproduced + in four subsequent full runs, and every suite this plan touched was run green individually many times. + Recorded rather than hidden — if it recurs, capture it with + `dotnet test … --logger "console;verbosity=normal"` and check it against the #500 list. +- Bookkeeping: `archreview/plans/STATUS.md` gains an R3-02 section (what landed per task, the + client-visible behaviour changes, the suite state, and the fact that **T19 the live gate is not run**). +- **Deviation:** the plan also asks for edits to "the four source reports' prior-finding tables". Those + tables are the round-3 review record written at `12b0035a`, and the sibling round-3 branches (R3-01, + R3-03, R3-04) likewise left them untouched, tracking progress in STATUS.md + the plan register instead. + Followed that precedent rather than diverging mid-round. + +--- + +## Outstanding + +- **T19 — the live gate (merge-blocking).** Not run: it needs the docker-dev rig plus the shared Modbus + fixture, and it is the only evidence that the identical-value recovery works end to end on a real + device. Recipe unchanged in §Live gate; the constant HR[5] vs auto-incrementing HR[100] pairing is what + makes it non-vacuous. diff --git a/archreview/plans/R3-02-stale-good-family-plan.md.tasks.json b/archreview/plans/R3-02-stale-good-family-plan.md.tasks.json index 36700d7f..60e9a6c5 100644 --- a/archreview/plans/R3-02-stale-good-family-plan.md.tasks.json +++ b/archreview/plans/R3-02-stale-good-family-plan.md.tasks.json @@ -131,7 +131,7 @@ { "id": "T18", "subject": "Full-suite sweep (Runtime.Tests 3x for the #500 flake profile) + STATUS.md / source-report bookkeeping", - "status": "pending", + "status": "done", "blockedBy": [ "T5", "T10",