docs(r2-03): record execution deviations (T7 stress config, test-run scope)
v2-ci / build (pull_request) Successful in 3m55s
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (pull_request) Failing after 4m14s
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (pull_request) Failing after 1m44s
v2-ci / unit-tests (pull_request) Failing after 9m13s
v2-ci / build (pull_request) Successful in 3m55s
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (pull_request) Failing after 4m14s
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (pull_request) Failing after 1m44s
v2-ci / unit-tests (pull_request) Failing after 9m13s
This commit is contained in:
@@ -673,3 +673,30 @@ T4, T5, T8, T10 ──► T11 (sweep + docs) ──► T12 (live /run gate)
|
||||
estimate for action item #3. **Overall risk:** Low-Medium, concentrated in S13's deliberate behavior
|
||||
change (nodes that used to freeze Good now go Bad — the point of the fix) and the one inverted legacy
|
||||
test expectation, both explicitly task-tracked.
|
||||
|
||||
## Execution deviations (R2-03)
|
||||
|
||||
Executed on branch `r2/03-vt-failure-quality` off master `1676c8f4` (not `f6eaa267` — the plan's verified
|
||||
tree; `1676c8f4` is the current master and includes the round-2 plan/docs merge, so the code anchors are
|
||||
unchanged). Deviations, all reversible:
|
||||
|
||||
- **T7 stress-test config retuned for a reliable RED on fast hardware.** The plan's prescribed shape
|
||||
(single loop × 300 sequential evaluations racing a back-to-back `Thread.Yield` clear loop) did **not**
|
||||
reproduce the ObjectDisposedException on this dev machine (arm64 macOS, many idle cores → the
|
||||
fetch→Task.Run-hop→disposed-guard window is sub-microsecond and the Task.Run body dispatches instantly).
|
||||
Escalating to a back-to-back clear loop instead compile-swamped the run into a 60 s `WaitAsync`
|
||||
timeout (every evaluation recompiles under constant clearing) — and a back-to-back clear also risks
|
||||
double-disposal within one evaluation, which a single retry cannot heal (would make the fix's GREEN
|
||||
flaky). Final config: **12 concurrent evaluation loops × 400 iterations** (thread-pool pressure widens
|
||||
the fetch→run window) racing a clear loop that clears then `Thread.SpinWait(4000)` (~tens of µs —
|
||||
frequent but not back-to-back, so at most one clear lands inside a single evaluation and the warm cache
|
||||
keeps compile cost bounded). This reproduces reliably (133 disposed-reason failures observed on the
|
||||
unfixed tree) and is deterministically green post-fix (verified stable across 3 repeat runs). The
|
||||
assertion was **not** weakened — it still requires every evaluation to succeed with no "disposed" reason.
|
||||
- **Test-run scope narrowed per controller memory constraint.** A mid-execution controller directive
|
||||
flagged a ~16 GB/run memory leak in the `*.IntegrationTests` suites and forbade whole-project/whole-
|
||||
solution `dotnet test`. Verified locally instead: `dotnet build ZB.MOM.WW.OtOpcUa.slnx` clean; the whole
|
||||
`Runtime.Tests` unit project (372/372); and `RoslynVirtualTagEvaluatorTests` filtered (20/20). **T11**
|
||||
(full cross-suite sweep) and **T12** (docker-dev live-`/run` gate) are marked `deferred-live` in
|
||||
`.tasks.json` for the controller's serialized heavy pass — the build + STATUS/tasks bookkeeping portion
|
||||
of T11 was completed and committed.
|
||||
|
||||
Reference in New Issue
Block a user