29 lines
1.6 KiB
Markdown
29 lines
1.6 KiB
Markdown
# WBV2-P4-003 status
|
|
|
|
- task: `WBV2-P4-003`
|
|
- parent: `WBV2-P4-002`
|
|
- parity: `SCULPT.NONMESH.PAINT_BOUNDED`
|
|
- implementationClass: `LOCAL_BOUNDED`
|
|
- status: `done`
|
|
- fixture: `tests/files/web/generated/WBV2-P4-003-SCULPT.NONMESH.PAINT_BOUNDED.blend`
|
|
|
|
## Evidence
|
|
|
|
- Blender desktop and WASM/Main expose the same single-user Sculpt mesh with five vertices, five faces, `.sculpt_mask`, and `.sculpt_face_set`, plus an available three-point Bezier Curve and three-point Point Cloud.
|
|
- `setSculptMeshAttributes` and a bounded `DRAW` Sculpt stroke commit atomically. The updated mask and face sets, stroke result, Curve, and Point Cloud survive save/reopen exactly.
|
|
- Unsupported brush input and malformed attribute lengths are rejected without a revision change. The PBVH query returns the stable `PAINT_PBVH_UNAVAILABLE` gate for the current WASM build; stale PBVH requests return `REVISION_CONFLICT`.
|
|
|
|
## Commands
|
|
|
|
- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/WBV2-P4-003.py -- tests/files/web/generated/WBV2-P4-003-SCULPT.NONMESH.PAINT_BOUNDED.blend`
|
|
- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/check-wbv2-p4-003-desktop.py -- tests/files/web/generated/WBV2-P4-003-SCULPT.NONMESH.PAINT_BOUNDED.blend tests/golden/WBV2-P4-003/sculpt-desktop-report.json`
|
|
- `node --check tools/web/check-generated-gap.mjs`
|
|
- `npm --prefix web run test:generated-gap -- --task WBV2-P4-003`
|
|
- `node tools/web/check-generated-gap.mjs --task WBV2-P4-003`
|
|
- `node tools/web/check-task-context.mjs --task WBV2-P4-003 --write`
|
|
|
|
## Handoff
|
|
|
|
- nextTask: `WBV2-P4-004`
|
|
- queue mutation: allowed after manifest and parent hash validation
|