Skip to content

Commit 75d1340

Browse files
committed
Define deterministic test execution and fixture isolation rules for Workspace V2 and tool validation lanes - PR_26146_004-test-fixture-isolation-and-determinism
1 parent de340f0 commit 75d1340

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

docs/dev/PROJECT_INSTRUCTIONS.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -402,6 +402,39 @@ Integration-test-only scope is limited to:
402402
- palette propagation
403403
- toolState open/save contracts
404404

405+
### Test Fixture Isolation And Determinism
406+
407+
Tests must execute deterministically.
408+
409+
No test may depend on prior `localStorage` or `sessionStorage` state.
410+
411+
No test may depend on execution order.
412+
413+
Tests must clean up runtime state after execution.
414+
415+
Each tool owns its tool-specific fixtures.
416+
417+
Shared fixtures must be explicit and versioned.
418+
419+
Hidden auto-generated fixture data is prohibited.
420+
421+
Runtime timestamps and random seeds must be controllable in tests.
422+
423+
Playwright tests must validate explicit expected outcomes.
424+
425+
Flaky retry masking is prohibited unless documented with the underlying failure mode and owner.
426+
427+
Fixture categories:
428+
- minimal contract fixtures
429+
- tool runtime fixtures
430+
- integration fixtures
431+
- affected game fixtures
432+
- failure-case fixtures
433+
434+
Affected game fixtures are opt-in only.
435+
436+
Fixtures must declare required manifests and toolState inputs.
437+
405438
Every PR must document:
406439
- whether full samples test was skipped or run
407440
- reason for decision

0 commit comments

Comments
 (0)