diablo2-web/TEST_READY.md

30 lines
2.8 KiB
Markdown

# Test Readiness Gate
Test Runner: `npx vitest run tests/e2e-module-split/`
## Coverage Summary
| Tier | File | Tests Written | Required Minimum | Status |
|---|---|---|---|---|
| Tier 1 — Feature Coverage | `tests/e2e-module-split/tier1-feature-coverage.test.ts` | 52 | >= 50 (10 features x 5) | READY |
| Tier 2 — Boundary & Corner | `tests/e2e-module-split/tier2-boundary-corner.test.ts` | 52 | >= 50 (10 features x 5) | READY |
| Tier 3 — Cross-Feature | `tests/e2e-module-split/tier3-cross-feature.test.ts` | 16 | >= 15 | READY |
| Tier 4 — Real-World Scenarios | `tests/e2e-module-split/tier4-real-world-scenarios.test.ts` | 6 | >= 6 | READY |
| Tier 5 — Adversarial Hardening | `tests/e2e-module-split/tier5-adversarial-hardening.test.ts` | 12 | >= 10 | READY |
| **Total** | | **138** | **>= 131** | **READY** |
## Feature Checklist
| Feature ID | Feature Name | Tier 1 (>=5) | Tier 2 (>=5) | Tier 3 (in pairwise) | Tier 4 (in scenario) | Tier 5 (adversarial) |
|---|---|---|---|---|---|---|
| F1 | `src/common/` Pure Module & Data Registry Decoupling | 6 | 6 | Yes (`CF5`) | Yes (`Scenario 3`, `Scenario 5`) | Yes (`adv_F1_01..06`) |
| F2 | `src/common/` Shared Formats, MPQ, Data & i18n Submodules | 5 | 5 | Yes (`CF1`, `CF8`, `CF11`) | Yes (`Scenario 3`, `Scenario 6`) | Yes (`adv_F2_01..04`) |
| F3 | `src/common/` Shared Domain Models (Items, Units, Skills, World) | 5 | 6 | Yes (`CF2`, `CF3`, `CF4`, `CF5`, `CF8`, `CF9`, `CF10`) | Yes (`Scenario 1`, `Scenario 5`, `Scenario 6`) | Yes (`adv_server_hardening`) |
| F4 | `src/netproto/` Pure Binary Wire Protocol Layer | 5 | 5 | Yes (`CF6`, `CF7`, `CF16`) | Yes (`Scenario 1`, `Scenario 2`, `Scenario 3`) | Yes (`adv_BUG_03`) |
| F5 | `src/server/` Authoritative Game Simulation & AI Engine | 5 | 5 | Yes (`CF1`, `CF2`, `CF6`, `CF9`, `CF10`, `CF14`) | Yes (`Scenario 1`, `Scenario 3`, `Scenario 6`) | Yes (`adv_server_world_200_step_determinism`, `adv_game_engine_200_step_determinism`, `adv_server_hardening`) |
| F6 | `src/client/` Browser Presentation, Renderer, Audio, UI & Session | 6 | 5 | Yes (`CF3`, `CF4`, `CF6`, `CF7`, `CF8`, `CF12`, `CF16`) | Yes (`Scenario 1`, `Scenario 2`, `Scenario 3`, `Scenario 4`) | Yes (`adv_BUG_01`, `adv_online_session_lifecycle`) |
| F7 | Unified `play.html` Single-Entry Launcher & Vite Build Consolidation | 5 | 5 | Yes (`CF12`, `CF13`) | Yes (`Scenario 4`) | Yes (`adv_BUG_01`) |
| F8 | `src/baker/` Offline MPQ Extraction & CLI Tools Alignment | 5 | 5 | Yes (`CF5`, `CF11`, `CF15`) | Yes (`Scenario 3`, `Scenario 5`) | Yes (`adv_F4_01..03`) |
| F9 | Multi-TSConfig Compile-Time Module Boundary Enforcement | 5 | 5 | Yes (`CF13`, `CF14`, `CF15`) | Yes (`Scenario 3`) | Yes (`adv_BUG_01..03`) |
| F10 | Repository-Wide Import Graph & Test/Benchmark Suite Migration | 5 | 5 | Yes (`CF16`) | Yes (`Scenario 2`, `Scenario 3`) | Yes (`adv_BUG_02`, `adv_BUG_03`) |