# WBV2-P1131-001: verify Curve topology module - task: WBV2-P1131-001 - parent: WBV2-P1131-000 - status: in_progress - gap: workflow:curve_topology_editor - ownerFamily: EDITOR - targetImplementationClass: LOCAL_EXACT - moduleId: CURVE_TOPOLOGY_EDITOR - Implementation entrypoint: `node tools/web/run-wbv2-module-task.mjs --task WBV2-P1131-001 --write` ## 目标 Verify the source-backed Blender Curve TOGGLE_CYCLIC transaction through Main, protocol, Worker and frontend paths without duplicating the existing non-mesh geometry implementation. ## 输入与范围 - Source paths: - `blender-5.2.0/source/blender/editors/curve/curve_ops.cc` - `blender-5.2.0/source/blender/web_engine/web_engine_api.cpp` - `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` - `web/protocol/curve-topology-editor.ts` - `web/app/src/workers/curve-topology-contract-test.worker.ts` - `web/app/src/app/App.tsx` - `web/tests/e2e/curve-topology-contract.spec.ts` - `web/tests/e2e/curve-topology-operator.spec.ts` - Reused receipts: - `tests/golden/WBV2-P1101-000/manifest.json` + `tests/golden/WBV2-P1101-000/module-receipt.json` - Production tests: `web/tests/e2e/curve-topology-contract.spec.ts`, `web/tests/e2e/curve-topology-operator.spec.ts` ## 验收 - Positive: TOGGLE_CYCLIC Main mutation, operator gate exposes only verified capability, save/reopen preserves cyclic spline state - Negative: unknown curve operator, stale revision claim, selection and payload budget overflow - Recovery: undo, redo, save/reopen, worker termination and deterministic contract parse - Commands: - `npm --prefix web run typecheck` - `npm --prefix web run build` - `WEB_TEST_PORT=5347 npm --prefix web run test:e2e -- --workers=1 tests/e2e/curve-topology-contract.spec.ts tests/e2e/curve-topology-operator.spec.ts` - malformed input, missing source, hash drift or Chromium failure remains in_progress and does not advance the queue. ## 交付与回滚 - Receipt: `tests/golden/WBV2-P1131-001/module-receipt.json` - Manifest: `tests/golden/WBV2-P1131-001/manifest.json` - Status: `docs/status/WBV2-P1131-001.md` - Rollback: restore WBV2-P1131-000 as the queue parent and leave this module in_progress.