Accumulated uncommitted work: GHOST Web backend, WebGL/GPU web layer, web workflow engine and protocol, tooling, docs and task records. Large generated evidence, user-testing archives, build snapshots and imported test assets remain untracked. Co-Authored-By: Claude Code <noreply@anthropic.com>
50 lines
1.9 KiB
Markdown
50 lines
1.9 KiB
Markdown
# WBV2-P1101-003: verify_sculpt_paint_module
|
|
|
|
- task: WBV2-P1101-003
|
|
- parent: WBV2-P1101-002
|
|
- status: planned
|
|
- gap: workflow:module_sculpt_paint
|
|
- ownerFamily: SCULPT_PAINT
|
|
- targetImplementationClass: LOCAL_EXACT
|
|
- moduleId: SCULPT_PAINT
|
|
|
|
## 目标
|
|
|
|
Complete one coherent Blender function module through shared Main primitives and an aggregate operator case matrix.
|
|
|
|
## 输入与范围
|
|
|
|
- Source paths:
|
|
- `blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp`
|
|
- `blender-5.2.0/source/blender/web_engine/web_engine_main_state.h`
|
|
- `blender-5.2.0/source/blender/web_engine/web_engine_api.cpp`
|
|
- `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
|
|
- `web/protocol/web-engine.ts`
|
|
- `web/app/src/workers/web-engine.worker.ts`
|
|
- Reused receipts:
|
|
- `tests/golden/WBV2-P16-002/manifest.json`
|
|
- `tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json`
|
|
- Implementation and verification entrypoint: `node tools/web/run-wbv2-module-task.mjs --task WBV2-P1101-003 --write`
|
|
|
|
```
|
|
node tools/web/run-wbv2-module-task.mjs --task WBV2-P1101-003 --write
|
|
```
|
|
|
|
## 验收
|
|
|
|
Positive cases: vertex colors, vertex weights, bounded sculpt stroke
|
|
Negative boundaries: mirror unverified, invalid patch, unsupported brush
|
|
Recovery: undo, redo, save/reopen
|
|
Commands:
|
|
- `npm --prefix web run test:paint-roundtrip`
|
|
- `npm --prefix web run test:e2e -- --workers=1 tests/e2e/wbv2-paint-attributes-production.spec.ts`
|
|
|
|
Malformed or unsupported input must fail closed. A module advances only when source hashes, positive Main mutation, negative no-mutation, undo/redo, save/reopen, Chromium and aggregate manifest checks pass. A representative case never claims full-family parity.
|
|
|
|
## 交付与回滚
|
|
|
|
- Reports: `tests/golden/WBV2-P1101-003/`
|
|
- Manifest: `tests/golden/WBV2-P1101-003/manifest.json`
|
|
- Status: `docs/status/WBV2-P1101-003.md`
|
|
- Rollback: restore WBV2-P1101-002 as queue parent and leave this module in_progress.
|