29 lines
1.7 KiB
Markdown
29 lines
1.7 KiB
Markdown
# WBV2-P4-004 status
|
|
|
|
- task: `WBV2-P4-004`
|
|
- parent: `WBV2-P4-003`
|
|
- parity: `SIMULATION.CACHE_LIFECYCLE`
|
|
- implementationClass: `LOCAL_BOUNDED`
|
|
- status: `done`
|
|
- fixture: `tests/files/web/generated/WBV2-P4-004-SIMULATION.CACHE_LIFECYCLE.blend`
|
|
|
|
## Evidence
|
|
|
|
- Blender desktop and WASM/Main expose the same simulation source slice: one active rigid body, one passive collision body, and frame range 1..4. Save/reopen preserves the `physicsSimulation` manifest and settings exactly.
|
|
- A bounded two-frame Simulation cache manifest verifies its revision binding, content hash, contiguous frame hashes, deterministic `sim2-` key, and frame selection. A source revision change produces a different key and is not publishable.
|
|
- Corrupt payloads, cancelled verification, and invalid cache data fail closed with stable codes. LRU planning protects the active cache and satisfies the small budget without releasing protected bytes.
|
|
|
|
## Commands
|
|
|
|
- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/WBV2-P4-004.py -- tests/files/web/generated/WBV2-P4-004-SIMULATION.CACHE_LIFECYCLE.blend`
|
|
- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/check-wbv2-p4-004-desktop.py -- tests/files/web/generated/WBV2-P4-004-SIMULATION.CACHE_LIFECYCLE.blend tests/golden/WBV2-P4-004/simulation-desktop-report.json`
|
|
- `node --check tools/web/check-generated-gap.mjs`
|
|
- `npm --prefix web run test:generated-gap -- --task WBV2-P4-004`
|
|
- `node tools/web/check-generated-gap.mjs --task WBV2-P4-004`
|
|
- `node tools/web/check-task-context.mjs --task WBV2-P4-004 --write`
|
|
|
|
## Handoff
|
|
|
|
- nextTask: `WBV2-P5-001`
|
|
- queue mutation: allowed after manifest and parent hash validation
|