test(api): restore deterministic backend baseline

This commit is contained in:
cesnimda
2026-09-21 21:46:24 +02:00
parent 926f2e5164
commit 38cf37ef96
6 changed files with 8 additions and 9 deletions
+3 -3
View File
@@ -6,9 +6,9 @@ This is the five-condition [G-SHELL readiness slice](../READINESS_GATES.md#g-she
## Readiness decision
**CONDITIONAL GO for P5-01.** The five shell conditions have independent regression/visual oracles and are ready: mobile labels/focus and breakpoint lifecycle; admin-header reflow; command semantics; shared Tooltip accessibility; bottom-action toast clearance. Mapping a PRES group does not certify every workflow in that group.
**GO for P5-01.** The five shell conditions have independent regression/visual oracles and are ready: mobile labels/focus and breakpoint lifecycle; admin-header reflow; command semantics; shared Tooltip accessibility; bottom-action toast clearance. Mapping a PRES group does not certify every workflow in that group.
The remaining acceptance condition is **P5-00-D01**, an unrelated pre-existing backend test that now fails because its fixed fixture dates are evaluated against the real clock. The complete backend result is 915/916, not the inherited 916 passing. Restore that test's deterministic clock in a separately authorized test-only correction and rerun all 916 before starting P5-01. This checkpoint does not grant an exception to the baseline gate. F04 remains an independent production gate; package, CV and later-slice gates are unchanged. **P5-01 and B07 were not begun.**
P5-00-D01 was closed on 2026-09-21 by injecting the test's existing `MutableTimeProvider(FixedNow)` into the rules worker. The complete backend suite then passed **916/916** with no production worker change. F04 remains an independent production gate; package, CV and later-slice gates are unchanged. **B07 was not begun.**
## Reproduction and implementation
@@ -165,7 +165,7 @@ Each Playwright run sets `PLAYWRIGHT_JSON_OUTPUT_FILE` to its `.artifacts/p5-00-
On 2026-09-20 and again in the final 2026-09-21 run, the unchanged `BackgroundWorkerTenantTests.Rules_worker_uses_each_owners_settings_and_is_idempotent` fails at line 79: expected `Applied`, actual `Ghosted`. Its fixture seeds `DateApplied = FixedNow.AddDays(-30)` (2026-07-16), but the rules worker receives `TimeProvider.System`. The real clock has crossed the second owner's 60-day threshold. The production worker is applying that configured rule; this test mixes fixed data and a moving clock.
All 916 backend tests were executed: **915 passed, one failed, none skipped**. Neither backend application code nor this test was changed. This is distinct from P2-D01, SQLite write contention and a P5-00 UI regression. A requested, separate one-line test-only correction would pass the already existing `MutableTimeProvider(FixedNow)` to this worker and then rerun all 916; no production clock/rule change is proposed. Until that correction is authorized and validated, the inherited all-green backend baseline is not restored. Do not waive, filter out or relabel this test as expected failure.
The original P5-00 checkpoint executed all 916 tests: 915 passed, one failed, none skipped. The follow-up prerequisite checkpoint changed only this test to pass the already existing `MutableTimeProvider(FixedNow)` to the worker. The rerun passed **916/916** in 19 seconds. Production code, rules and schedules are unchanged; no skip or expected-failure annotation was added. This is distinct from P2-D01, SQLite write contention and the remaining P5-00-D02 Jobs browser-Back focus debt.
An earlier overlapping API/build attempt encountered Windows apphost file locking. Runs were subsequently serialized. That tooling conflict is not the cause of the assertion above. The interrupted browser run was replaced by a complete final run, not combined into a fabricated aggregate.