Surfaced while closing out plans/site-check-153.md (PR #154).
On a Windows dev box the apps/api suite finishes 3 failed | 30 passed files, 10 failed | 413 passed tests, on a tree where git diff develop..HEAD -- apps/api packages/ is empty. The failures spread across scrub-data.test.ts (4), internal-reload.test.ts (4), and store.test.ts (2), and reproduce with each file run alone, so it is not runner contention. Checking out develop and re-running store.test.ts reproduces its 2 failures exactly.
Mechanism (at least for store.test.ts): the fixture injects a write failure by pointing the private store at /dev/null/impossible-path and asserting the transaction rejects. On Windows that is an ordinary creatable directory, so the write succeeds and the expected throw never happens. The other seven likely share a POSIX-ism of the same flavor.
CI runs the gate on Linux where the fixtures behave as intended, so this only blocks the documented local validation gate on Windows. Worth a cross-platform fixture cleanup (e.g. a path that cannot exist on any OS, or a mocked write failure) if Windows dev boxes are to be supported.
Surfaced while closing out
plans/site-check-153.md(PR #154).On a Windows dev box the
apps/apisuite finishes 3 failed | 30 passed files, 10 failed | 413 passed tests, on a tree wheregit diff develop..HEAD -- apps/api packages/is empty. The failures spread acrossscrub-data.test.ts(4),internal-reload.test.ts(4), andstore.test.ts(2), and reproduce with each file run alone, so it is not runner contention. Checking outdevelopand re-runningstore.test.tsreproduces its 2 failures exactly.Mechanism (at least for
store.test.ts): the fixture injects a write failure by pointing the private store at/dev/null/impossible-pathand asserting the transaction rejects. On Windows that is an ordinary creatable directory, so the write succeeds and the expected throw never happens. The other seven likely share a POSIX-ism of the same flavor.CI runs the gate on Linux where the fixtures behave as intended, so this only blocks the documented local validation gate on Windows. Worth a cross-platform fixture cleanup (e.g. a path that cannot exist on any OS, or a mocked write failure) if Windows dev boxes are to be supported.