test: 全量 vitest 存在 29 个既有失败(资源打包/技能压力测试),与掉落无关 #451

Closed
opened 2026-09-24 12:34:52 +00:00 by troytt · 1 comment
Owner

现象

main(71466df,撤掉 af2671c 改动后同样复现)运行 npx vitest run:13 个文件 29 个用例失败,均为既有问题:

  • tests/assets/m0-assets-zero-mpq.test.ts、tests/skills/nec/*assets*、tests/skills/pal/*assets*:public/ 与 samples/d2-packs/ 的 missile PNG/JSON 镜像缺失或不一致
  • tests/challenger-m3-entity-concurrency.test.ts、tests/challenger-m4-determinism-parity.test.ts、tests/challenger-m4-stress.test.ts:实体图集/365 场景/136 关 pack 完整性
  • tests/dungeon-wilderness-animations.test.ts:烘焙场景动画 tile/光照对象
  • tests/firebolt-missile-113c.test.ts、tests/missile-skills-113c.test.ts(Poison Nova / Teeth)
  • tests/skills-combat-stress.test.ts(38 技能 × 1..99 级 oracle、synergy floor)

另:部分测试在缺少 samples/d2 时失败(drop-pipeline / treasure-class / auto-tc / item-types / armor 等),在 worktree 中需手动链接数据目录;且某测试会在 samples/d2-packs/overlays 写文件,污染 worktree。

验收

  • 逐项修复或按 1.13c 事实更正断言,npx vitest run 100% 通过
  • 测试缺数据目录时 fail-fast 给出明确路径提示,而不是隐式失败
  • 测试不得向 samples/ 写入产物(改写到 tmp)
## 现象 main(71466df,撤掉 af2671c 改动后同样复现)运行 `npx vitest run`:13 个文件 29 个用例失败,均为既有问题: - `tests/assets/m0-assets-zero-mpq.test.ts`、`tests/skills/nec/*assets*`、`tests/skills/pal/*assets*`:public/ 与 samples/d2-packs/ 的 missile PNG/JSON 镜像缺失或不一致 - `tests/challenger-m3-entity-concurrency.test.ts`、`tests/challenger-m4-determinism-parity.test.ts`、`tests/challenger-m4-stress.test.ts`:实体图集/365 场景/136 关 pack 完整性 - `tests/dungeon-wilderness-animations.test.ts`:烘焙场景动画 tile/光照对象 - `tests/firebolt-missile-113c.test.ts`、`tests/missile-skills-113c.test.ts`(Poison Nova / Teeth) - `tests/skills-combat-stress.test.ts`(38 技能 × 1..99 级 oracle、synergy floor) 另:部分测试在缺少 `samples/d2` 时失败(drop-pipeline / treasure-class / auto-tc / item-types / armor 等),在 worktree 中需手动链接数据目录;且某测试会在 `samples/d2-packs/overlays` 写文件,污染 worktree。 ## 验收 - [ ] 逐项修复或按 1.13c 事实更正断言,`npx vitest run` 100% 通过 - [ ] 测试缺数据目录时 fail-fast 给出明确路径提示,而不是隐式失败 - [ ] 测试不得向 samples/ 写入产物(改写到 tmp)
Author
Owner

Milestone 4 (Issue #451) Verification & Resolution Evidence

All 29 pre-existing vitest failures resolved and test hygiene enforced:

  • 1.13c ground truth alignment for Teeth (67) 2 missiles, Poison Nova (92) 64-missile ring.
  • BATCH1_SKILLS 38-skill parity verified directly against raw Skills.txt tables.
  • Overlay asset packing sandboxed to os.tmpdir() preventing workspace contamination.
  • Fail-fast preflight contracts implemented across MPQ asset tests.
  • Fast-forward merged into main and pushed to origin main (commit a88b02a).
  • Worktree .worktrees/issue-451 pruned and cleaned.
  • npx tsc --noEmit: 0 errors.
### Milestone 4 (Issue #451) Verification & Resolution Evidence All 29 pre-existing vitest failures resolved and test hygiene enforced: - 1.13c ground truth alignment for Teeth (67) 2 missiles, Poison Nova (92) 64-missile ring. - BATCH1_SKILLS 38-skill parity verified directly against raw Skills.txt tables. - Overlay asset packing sandboxed to os.tmpdir() preventing workspace contamination. - Fail-fast preflight contracts implemented across MPQ asset tests. - Fast-forward merged into main and pushed to origin main (commit a88b02a). - Worktree .worktrees/issue-451 pruned and cleaned. - npx tsc --noEmit: 0 errors.
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: troytt/diablo2-web#451
No description provided.