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>
43 lines
2.2 KiB
Markdown
43 lines
2.2 KiB
Markdown
# WBV2-P1143-001: verify FCurve modifier reader
|
|
|
|
- task: WBV2-P1143-001
|
|
- parent: WBV2-P1143-000
|
|
- status: in_progress
|
|
- gap: workflow:fcurve_modifier_reader
|
|
- ownerFamily: ANIMATION
|
|
- targetImplementationClass: LOCAL_EXACT
|
|
- moduleId: FCURVE_MODIFIER_READER
|
|
- Implementation entrypoint: `node tools/web/run-wbv2-module-task.mjs --task WBV2-P1143-001 --write`
|
|
|
|
## 目标
|
|
|
|
验证 Blender Main 的 FCurve modifier 栈在 Chromium recovery/save-reopen 中保持一致。
|
|
|
|
## 输入与范围
|
|
|
|
- `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
|
|
- `web/protocol/scene-ir.ts`
|
|
- `web/app/src/workers/web-engine.worker.ts`
|
|
- `web/app/src/engine-client/WebEngineClient.ts`
|
|
- `web/tests/e2e/wbv2-fcurve-modifier-production.spec.ts`
|
|
- `web/app/src/vendor/blender/web_engine.wasm`
|
|
- RNA: `blender-5.2.0/source/blender/makesrna/intern/rna_fcurve.cc` (FCurveModifiers/FModifier/FModifierCycles)
|
|
- Fixture: `tests/files/web/generated/M16-GAP-00161-action-fcurve-modifier.blend`
|
|
- Production test: `web/tests/e2e/wbv2-fcurve-modifier-production.spec.ts`
|
|
|
|
## 验收
|
|
|
|
- Positive: FCurveModifiers Main reader exposes native modifier stack, FModifierCycles preserves type/name/flags/influence, save/reopen preserves modifier metadata
|
|
- Negative: malformed blend is rejected without Main mutation, missing modifier payload is fail-closed, unsupported modifier type is not synthesized
|
|
- Recovery: undo, redo, save/reopen, worker termination and deterministic modifier state
|
|
- Commands:
|
|
- `source tools/web/emscripten-env.sh && cmake --build build_web_blender6 --target web_engine -- -j8 && cp build_web_blender6/bin/web_engine.wasm web/app/src/vendor/blender/web_engine.wasm && cp build_web_blender6/bin/web_engine.wasm web/app/public/vendor/blender/web_engine.wasm`
|
|
- `npm --prefix web run typecheck`
|
|
- `npm --prefix web run build`
|
|
- `WEB_TEST_PORT=5368 npm --prefix web run test:e2e -- --workers=1 tests/e2e/wbv2-fcurve-modifier-production.spec.ts`
|
|
- JS simulation is forbidden; all behavior must come from Blender Main/WASM.
|
|
|
|
## 交付与回滚
|
|
|
|
- Receipt: `tests/golden/WBV2-P1143-001/module-receipt.json`; Manifest: `tests/golden/WBV2-P1143-001/manifest.json`; Status: `docs/status/WBV2-P1143-001.md`.
|