{ "schemaVersion": 1, "planId": "BLENDER_WEB_IMPLEMENTATION_FIRST_WAVE_P25", "status": "ACTIVE_SOURCE_BACKED_IMPLEMENTATION_QUEUE", "authority": "user_authorized_implementation_first_execution", "sourcePlan": "docs/BLENDER_WEB_PARITY_TASK_PLAN_V2.json", "executionPointer": "docs/EXECUTION_QUEUE.md", "runtimePolicy": { "blenderSource": "blender-5.2.0", "mainAuthority": "blender_main", "browserPolicy": "chromium_only_for_later_verification", "verificationPolicy": "deferred_until_implementation_wave_closes", "reusePolicy": "source_hash_behavior_hash_and_dedupe_key" }, "inventoryPolicy": { "total": 6900, "legacyCompleted": 281, "legacyPending": 6618, "effectiveCompleted": 290, "effectivePending": 6609, "overlayMutation": "forbidden_during_implementation_wave", "provenance": "read_only" }, "tasks": [ { "id": "WBV2-P24-000", "phase": "P25", "title": "authorize_object_move_collection_continuation", "kind": "enabling", "owner": "PROGRAM", "dependsOn": [ "WBV2-P23-003" ], "parityId": null, "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-000", "gate": "G1", "card": "docs/tasks/WBV2-P24-000.md", "behavior": "Retained source-backed Object Move-to-Collection continuation.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": true }, { "id": "WBV2-P24-001", "phase": "P25", "title": "select_object_move_collection_batch", "kind": "feature", "owner": "PARITY", "dependsOn": [ "WBV2-P24-000" ], "parityId": "OBJECT_OPERATIONS.MOVE_COLLECTION", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-001", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P24-001.md", "behavior": "Retained the unique moveObjectToCollection candidate without rerun.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P24-002", "phase": "P25", "title": "object_move_collection_engine_receipt", "kind": "feature", "owner": "OBJECT", "dependsOn": [ "WBV2-P24-001" ], "parityId": "OBJECT_OPERATIONS.MOVE_COLLECTION", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-002", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P24-002.md", "behavior": "Retained the existing compiled WASM Main move receipt.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P24-003", "phase": "P25", "title": "switch_to_implementation_first_mode", "kind": "feature", "owner": "PROGRAM", "dependsOn": [ "WBV2-P24-002" ], "parityId": null, "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-003", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P24-003.md", "behavior": "Authorize implementation-first execution with verification deferred.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-000", "phase": "P25", "title": "authorize_source_backed_implementation_wave", "kind": "enabling", "owner": "PROGRAM", "dependsOn": [ "WBV2-P24-003" ], "parityId": null, "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-000", "gate": "G1", "card": "docs/tasks/WBV2-P25-000.md", "behavior": "Create a capability-family implementation queue from the existing source tree.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": true }, { "id": "WBV2-P25-001", "phase": "P25", "title": "implement_main_command_registry_and_dispatch", "kind": "feature", "owner": "ENGINE", "dependsOn": [ "WBV2-P25-000" ], "parityId": "ENGINE.COMMAND_REGISTRY", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-001", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-001.md", "behavior": "Create and consume one source-of-truth registry for Main-authoritative WebEngine commands.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-002", "phase": "P25", "title": "implement_core_scene_object_surface", "kind": "feature", "owner": "OBJECT", "dependsOn": [ "WBV2-P25-001" ], "parityId": "OBJECT_OPERATIONS.CORE_SCENE", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-002", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-002.md", "behavior": "Complete create, duplicate, delete, rename, transform, parent, collection and visibility paths.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-003", "phase": "P25", "title": "implement_mesh_authoring_surface", "kind": "feature", "owner": "MESH", "dependsOn": [ "WBV2-P25-002" ], "parityId": "MESH.AUTHORING", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-003", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-003.md", "behavior": "Complete mesh edit, UV, material slots, vertex colors and weights paths.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-004", "phase": "P25", "title": "implement_nonmesh_geometry_surface", "kind": "feature", "owner": "GEOMETRY", "dependsOn": [ "WBV2-P25-003" ], "parityId": "GEOMETRY.NON_MESH", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-004", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-004.md", "behavior": "Complete curve, surface, font, volume, metaball and grease-pencil paths.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "done", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-005", "phase": "P25", "title": "implement_animation_constraint_render_surface", "kind": "feature", "owner": "ANIMATION", "dependsOn": [ "WBV2-P25-004" ], "parityId": "ANIMATION.RENDER", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-005", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-005.md", "behavior": "Complete keyframes, F-curves, NLA, constraints, cameras, lights, world and sculpt paths.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "in_progress", "ready": true, "queueMutationAllowed": false }, { "id": "WBV2-P25-006", "phase": "P25", "title": "implement_io_media_storage_surface", "kind": "feature", "owner": "IO", "dependsOn": [ "WBV2-P25-005" ], "parityId": "IO.MEDIA_STORAGE", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-006", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-006.md", "behavior": "Complete image, library, font, blend save/reopen and asset/resource routing paths.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "planned", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-007", "phase": "P25", "title": "implement_frontend_workbench_surface", "kind": "feature", "owner": "FRONTEND", "dependsOn": [ "WBV2-P25-006" ], "parityId": "FRONTEND.WORKBENCH", "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-007", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-007.md", "behavior": "Expose implemented command families through the worker, client and workbench UI.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "planned", "ready": false, "queueMutationAllowed": false }, { "id": "WBV2-P25-008", "phase": "P25", "title": "run_implementation_wave_smoke", "kind": "feature", "owner": "RELEASE", "dependsOn": [ "WBV2-P25-007" ], "parityId": null, "implementationClass": "SOURCE_BACKED", "parallelGroup": "p25-008", "gate": "IMPLEMENTATION", "card": "docs/tasks/WBV2-P25-008.md", "behavior": "Run one bounded build and browser-start smoke before opening the verification wave.", "outputs": [ "implementation-report", "manifest", "status" ], "acceptance": [ "real source or WebEngine Main path is wired", "unsupported input fails closed", "implementation smoke is reproducible", "verification remains deferred until the verification wave" ], "status": "planned", "ready": false, "queueMutationAllowed": false } ] }