feat(web): add audio speaker and particle authoring
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled

This commit is contained in:
mes123456
2026-08-29 06:30:42 +08:00
parent 81113159dc
commit 43d0c437bb
44 changed files with 2228 additions and 54 deletions

View File

@@ -21,15 +21,15 @@
"artifacts": {
"sourceApi": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
"sha256": "6a3eebde527f029fce7666a080e8cac1a60de944aee372bfe772ee6e2adabbdf"
"sha256": "1e63bb78a5b216220c610059c3a7c1c5ee20227a777e67c90e32d7a78bf190b3"
},
"sourceMainState": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp",
"sha256": "7803654bf15db8645b65e0653eb3599b46f969d65c5a1a365daeee51079259d4"
"sha256": "236c2eb8d40a790b0008d5d4c193bb3a504ceca1efee347c94b2af28b5b5e820"
},
"sourceMainHeader": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_main_state.h",
"sha256": "d689575a2a8496acf50b5b8cafbb1f26b80de54ed7735a2bf1507b01f072f568"
"sha256": "d2d93fb5de091fe0a41438ba423dc6424d20141a0de25ab1d5b1ec68bf9ffd0d"
},
"loader": {
"path": "web/app/src/vendor/blender/web_engine.js",
@@ -37,7 +37,7 @@
},
"wasm": {
"path": "web/app/src/vendor/blender/web_engine.wasm",
"sha256": "e04c9c06fa2db509acf210290cfd132acae68597964952869f133d51a8c0d9ff"
"sha256": "ff36d8183cfd9112e67e104f5bf1ec6577ef605bdfcf5239a1cea8504caf7058"
},
"publicLoader": {
"path": "web/app/public/vendor/blender/web_engine.js",
@@ -45,19 +45,19 @@
},
"publicWasm": {
"path": "web/app/public/vendor/blender/web_engine.wasm",
"sha256": "e04c9c06fa2db509acf210290cfd132acae68597964952869f133d51a8c0d9ff"
"sha256": "ff36d8183cfd9112e67e104f5bf1ec6577ef605bdfcf5239a1cea8504caf7058"
},
"webDistIndex": {
"path": "web/dist/index.html",
"sha256": "456f1171b36fc9cea608ea6e74a11570f855b0f26a646350d5ac458a4e918fe9"
"sha256": "922dc39d65fa87a4a03f5ebeaf46e38c72a2833f3bc45adcb923d9bc52cf148e"
},
"webDistWorker": {
"path": "web/dist/assets/web-engine.worker-O0DBLaO6.js",
"sha256": "cb291abff13abbc03083fccd6793b113fc16539e4760e55a3ca2c7633caf0d28"
"path": "web/dist/assets/web-engine.worker-DFgABFdV.js",
"sha256": "7b3487a8ee98663a8392ab2567ab01639f967f3956bf002657473d4c4e046ac4"
},
"webDistWasm": {
"path": "web/dist/assets/web_engine-BW7Q6ZZS.wasm",
"sha256": "e04c9c06fa2db509acf210290cfd132acae68597964952869f133d51a8c0d9ff"
"path": "web/dist/assets/web_engine-CoBQBGl-.wasm",
"sha256": "ff36d8183cfd9112e67e104f5bf1ec6577ef605bdfcf5239a1cea8504caf7058"
}
},
"verification": {

View File

@@ -0,0 +1,33 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-000",
"operation": "AUTHORIZE_AUDIO_PARTICLE_WORKBENCH",
"status": "PASS",
"parent": {
"task": "WBV2-P32-003",
"manifest": "tests/golden/WBV2-P32-003/manifest.json",
"manifestSha256": "6c456ad069a3311b6fd3a6632ab2fef154fed994a90f92db71053488e31d805a"
},
"scope": {
"firstTask": "WBV2-P33-001",
"plannedTasks": [
"WBV2-P33-000",
"WBV2-P33-001",
"WBV2-P33-002",
"WBV2-P33-003"
]
},
"verification": {
"status": "DEFERRED",
"chromium": false,
"completionOverlay": false
},
"inventory": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609
},
"nextTask": "WBV2-P33-001"
}

View File

@@ -0,0 +1,144 @@
{
"schemaVersion": 1,
"planId": "BLENDER_WEB_AUDIO_PARTICLE_IMPLEMENTATION_P33",
"status": "ACTIVE_AUDIO_PARTICLE_QUEUE",
"authority": "user_authorized_implementation_first_execution",
"executionPointer": "docs/EXECUTION_QUEUE.md",
"runtimePolicy": {
"blenderSource": "blender-5.2.0",
"mainAuthority": "blender_main",
"browserPolicy": "chromium_only_for_later_verification",
"verificationPolicy": "deferred",
"reusePolicy": "source_hash_behavior_hash_and_dedupe_key"
},
"inventoryPolicy": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609,
"overlayMutation": "forbidden_during_implementation_wave"
},
"tasks": [
{
"id": "WBV2-P33-000",
"phase": "P33",
"title": "authorize_audio_particle_workbench",
"kind": "enabling",
"owner": "PROGRAM",
"dependsOn": [
"WBV2-P32-003"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-000",
"gate": "G1",
"card": "docs/tasks/WBV2-P33-000.md",
"behavior": "Authorize audio resource and particle settings implementation.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": true
},
{
"id": "WBV2-P33-001",
"phase": "P33",
"title": "implement_audio_resource_authoring",
"kind": "feature",
"owner": "AUDIO",
"dependsOn": [
"WBV2-P33-000"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-001",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-001.md",
"behavior": "Connect typed Sound and Speaker property commands to Blender Main.",
"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"
],
"status": "in_progress",
"ready": true,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-002",
"phase": "P33",
"title": "implement_particle_settings_authoring",
"kind": "feature",
"owner": "PARTICLE",
"dependsOn": [
"WBV2-P33-001"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-002",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-002.md",
"behavior": "Connect bounded ParticleSettings property commands to Blender Main.",
"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"
],
"status": "planned",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-003",
"phase": "P33",
"title": "run_p33_implementation_smoke",
"kind": "enabling",
"owner": "RELEASE",
"dependsOn": [
"WBV2-P33-002"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-003",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-003.md",
"behavior": "Run the bounded production build and source WASM smoke after P33.",
"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"
],
"status": "planned",
"ready": false,
"queueMutationAllowed": false
}
]
}

View File

@@ -0,0 +1,38 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-000",
"parentTask": "WBV2-P32-003",
"operation": "AUTHORIZE_AUDIO_PARTICLE_WORKBENCH",
"status": "done",
"enablingTask": true,
"parityStateChange": false,
"runtime": "SOURCE_BACKED_AUDIO_PARTICLE_QUEUE",
"artifacts": {
"parentManifest": {
"path": "tests/golden/WBV2-P32-003/manifest.json",
"sha256": "f058a7c5fe17c19d3f5cb5b74b32e278fb54b2a0941fd00b09860ce8a256d89d"
},
"plan": {
"path": "tests/golden/WBV2-P33-000/audio-particle-task-plan.json",
"sha256": "9e61f2779b721a1bf06c7034faf02a1c68139fc0f95241f252ed2565fd2a9b24"
},
"report": {
"path": "tests/golden/WBV2-P33-000/audio-particle-root-report.json",
"sha256": "24898c64ca6716ed8c5749f2b69040d7ecf41fcec4575c5092c8dd2b2c25ecde"
},
"status": {
"path": "docs/status/WBV2-P33-000.md",
"sha256": "47c05a47c7bd57f9f8efe5599fdbf0b34dabfdabe7e6cf309cee0eaffee5a3db"
}
},
"assertions": {
"plannedTasks": 4,
"verificationDeferred": true,
"completionOverlayWritten": false,
"inventoryTotal": 6900,
"effectiveCompleted": 290,
"effectivePending": 6609,
"historicalReproduction": false
},
"nextTask": "WBV2-P33-001"
}

View File

@@ -2,10 +2,10 @@
"schemaVersion": 1,
"task": "WBV2-P33-000",
"parentTask": "WBV2-P32-003",
"status": "in_progress",
"goal": "Authorize the next source-backed implementation wave.",
"status": "done",
"goal": "Authorize audio resource and particle settings implementation.",
"scope": {
"gap": "workflow:authorize_next_implementation_wave",
"gap": "workflow:authorize_audio_particle_workbench",
"ownerFamily": "PROGRAM",
"implementationClass": "SOURCE_BACKED"
},
@@ -18,12 +18,12 @@
"limits": {
"maxFiles": 12,
"evidenceBytes": 8192,
"contextRemainingBytes": 3870,
"contextRemainingTokens": 966
"contextRemainingBytes": 3663,
"contextRemainingTokens": 914
},
"source": {
"bytes": 6034,
"tokens": 1510
"bytes": 6241,
"tokens": 1562
},
"selected": [],
"excluded": [
@@ -60,7 +60,7 @@
"implementation smoke is reproducible",
"verification remains deferred"
],
"nextTask": null,
"nextTask": "WBV2-P33-001",
"sourceDocuments": {
"queue": "docs/EXECUTION_QUEUE.md",
"taskCard": "docs/tasks/WBV2-P33-000.md",
@@ -112,15 +112,15 @@
},
"budgets": {
"queueBytes": 4096,
"taskBytes": 1079,
"taskBytes": 1286,
"parentManifestBytes": 24576,
"parentStatusBytes": 6144,
"evidenceFiles": 12,
"evidenceBytes": 8192,
"contextTokens": 3500,
"contextEnvelopeTokens": 1024,
"taskLines": 37,
"taskTokens": 270
"taskLines": 38,
"taskTokens": 322
},
"size": {
"documents": [
@@ -132,9 +132,9 @@
},
{
"path": "docs/tasks/WBV2-P33-000.md",
"bytes": 1079,
"lines": 37,
"tokens": 270
"bytes": 1286,
"lines": 38,
"tokens": 322
},
{
"path": "tests/golden/WBV2-P32-003/manifest.json",
@@ -149,14 +149,14 @@
"tokens": 79
}
],
"sourceTokens": 1510,
"sourceTokens": 1562,
"evidenceFiles": 0,
"evidenceBytes": 0,
"evidenceTokens": 0,
"totalTokens": 1510,
"totalTokens": 1562,
"reservedEnvelopeTokens": 1024,
"estimatedContextTokens": 2534,
"serializedContextTokens": 600,
"estimatedContextTokens": 2586,
"serializedContextTokens": 603,
"withinBudget": true
}
}

View File

@@ -0,0 +1,144 @@
{
"schemaVersion": 1,
"planId": "BLENDER_WEB_AUDIO_PARTICLE_IMPLEMENTATION_P33",
"status": "ACTIVE_AUDIO_PARTICLE_QUEUE",
"authority": "user_authorized_implementation_first_execution",
"executionPointer": "docs/EXECUTION_QUEUE.md",
"runtimePolicy": {
"blenderSource": "blender-5.2.0",
"mainAuthority": "blender_main",
"browserPolicy": "chromium_only_for_later_verification",
"verificationPolicy": "deferred",
"reusePolicy": "source_hash_behavior_hash_and_dedupe_key"
},
"inventoryPolicy": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609,
"overlayMutation": "forbidden_during_implementation_wave"
},
"tasks": [
{
"id": "WBV2-P33-000",
"phase": "P33",
"title": "authorize_audio_particle_workbench",
"kind": "enabling",
"owner": "PROGRAM",
"dependsOn": [
"WBV2-P32-003"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-000",
"gate": "G1",
"card": "docs/tasks/WBV2-P33-000.md",
"behavior": "Authorize audio resource and particle settings implementation.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": true
},
{
"id": "WBV2-P33-001",
"phase": "P33",
"title": "implement_audio_resource_authoring",
"kind": "feature",
"owner": "AUDIO",
"dependsOn": [
"WBV2-P33-000"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-001",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-001.md",
"behavior": "Connect typed Sound and Speaker property commands to Blender Main.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-002",
"phase": "P33",
"title": "implement_particle_settings_authoring",
"kind": "feature",
"owner": "PARTICLE",
"dependsOn": [
"WBV2-P33-001"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-002",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-002.md",
"behavior": "Connect bounded ParticleSettings property commands to Blender Main.",
"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"
],
"status": "in_progress",
"ready": true,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-003",
"phase": "P33",
"title": "run_p33_implementation_smoke",
"kind": "enabling",
"owner": "RELEASE",
"dependsOn": [
"WBV2-P33-002"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-003",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-003.md",
"behavior": "Run the bounded production build and source WASM smoke after P33.",
"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"
],
"status": "planned",
"ready": false,
"queueMutationAllowed": false
}
]
}

View File

@@ -0,0 +1,35 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-001",
"operation": "IMPLEMENT_AUDIO_PARTICLE_FAMILY",
"status": "PASS",
"family": "AUDIO.SOUND_SPEAKER",
"sourceBacked": true,
"implementation": {
"marker": "web_engine_blend_main_set_sound_properties",
"sourcePaths": [
"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",
"web/protocol/web-engine.ts",
"web/app/src/workers/web-engine.worker.ts",
"web/app/src/app/App.tsx",
"web/protocol/io-media-commands.ts"
],
"duplicateShimAdded": false
},
"verification": {
"status": "DEFERRED",
"chromium": false,
"receipts": false,
"completionOverlay": false
},
"inventory": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609
},
"nextTask": "WBV2-P33-002"
}

View File

@@ -0,0 +1,72 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-001",
"parentTask": "WBV2-P33-000",
"operation": "IMPLEMENT_AUDIO_PARTICLE_FAMILY",
"status": "done",
"enablingTask": false,
"parityStateChange": false,
"runtime": "SOURCE_BACKED_AUDIO_PARTICLE_IMPLEMENTATION",
"artifacts": {
"parentManifest": {
"path": "tests/golden/WBV2-P33-000/manifest.json",
"sha256": "82e34bc3ac003b658d6cc053fec93be1c48912d78c35a5e30bda4f3c74892369"
},
"source1": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp",
"sha256": "236c2eb8d40a790b0008d5d4c193bb3a504ceca1efee347c94b2af28b5b5e820"
},
"source2": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_main_state.h",
"sha256": "d2d93fb5de091fe0a41438ba423dc6424d20141a0de25ab1d5b1ec68bf9ffd0d"
},
"source3": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
"sha256": "1e63bb78a5b216220c610059c3a7c1c5ee20227a777e67c90e32d7a78bf190b3"
},
"source4": {
"path": "web/protocol/web-engine.ts",
"sha256": "43700654bd614c9d8999b6fe52503d8a6c92c80b5472b3ce43ff09dc2a628e6f"
},
"source5": {
"path": "web/app/src/workers/web-engine.worker.ts",
"sha256": "3dbb4f9ca219d185e84b34e0a06aeea2a704b9681ff42c9cab2a7f7e0968fd85"
},
"source6": {
"path": "web/app/src/app/App.tsx",
"sha256": "1310ba2117b5545668d9a127467d5d93a9ce4b28d3d9d525929e3a86455a3120"
},
"source7": {
"path": "web/protocol/io-media-commands.ts",
"sha256": "39a939944660a1c19add2a27273dbc67f60b99b35db42b0c1ed71bdfef1c962a"
},
"report": {
"path": "tests/golden/WBV2-P33-001/implementation-report.json",
"sha256": "70d7b299050cf3ba16719081f4fa4f69c92382e69d4c296c31d3b9aa3fbbbac4"
},
"status": {
"path": "docs/status/WBV2-P33-001.md",
"sha256": "af2ba044a5bb9f5ca4864dc4374bc9c1e9620f7b71f8d59204ec57b2c5aae82d"
},
"plan": {
"path": "tests/golden/WBV2-P33-001/audio-particle-task-plan.json",
"sha256": "c1b318d841fef2a7558b3e65ddd6532ea7878b125f16851145241b5b52b6b572"
},
"taskContext": {
"path": "tests/golden/WBV2-P33-001/task-context.json",
"sha256": "9e36251a5cf04569546334049afd32e130e5b875fb459c47d5ab748eaf1f1930"
}
},
"assertions": {
"capabilityFamily": "AUDIO.SOUND_SPEAKER",
"sourceBacked": true,
"unsupportedFailsClosed": true,
"verificationDeferred": true,
"completionOverlayWritten": false,
"inventoryTotal": 6900,
"effectiveCompleted": 290,
"effectivePending": 6609,
"historicalReproduction": false
},
"nextTask": "WBV2-P33-002"
}

View File

@@ -0,0 +1,162 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-001",
"parentTask": "WBV2-P33-000",
"status": "in_progress",
"goal": "Connect typed Sound and Speaker property commands to Blender Main.",
"scope": {
"gap": "workflow:implement_audio_resource_authoring",
"ownerFamily": "AUDIO",
"implementationClass": "SOURCE_BACKED"
},
"commands": [
"node tools/web/check-task-context.mjs --task WBV2-P33-001 --write"
],
"inputPaths": [],
"inputSelection": {
"schemaVersion": 1,
"limits": {
"maxFiles": 12,
"evidenceBytes": 8192,
"contextRemainingBytes": 4177,
"contextRemainingTokens": 1044
},
"source": {
"bytes": 5727,
"tokens": 1432
},
"selected": [],
"excluded": [
{
"path": "web/protocol/web-engine.ts",
"bytes": 15529,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tests/golden/WBV2-P33-001/",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "docs/status/WBV2-P33-001.md",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "tests/golden/WBV2-P33-001/manifest.json",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
}
],
"totals": {
"files": 0,
"bytes": 0,
"tokens": 0
}
},
"exitCriteria": [
"real source or WebEngine Main path is wired",
"unsupported input fails closed",
"implementation smoke is reproducible",
"verification remains deferred"
],
"nextTask": "WBV2-P33-002",
"sourceDocuments": {
"queue": "docs/EXECUTION_QUEUE.md",
"taskCard": "docs/tasks/WBV2-P33-001.md",
"taskIndex": "tests/golden/WBV2/task-index.json",
"parentManifest": "tests/golden/WBV2-P33-000/manifest.json",
"parentStatus": "docs/status/WBV2-P33-000.md"
},
"readPolicy": {
"required": [
"docs/EXECUTION_QUEUE.md",
"docs/tasks/WBV2-P33-001.md",
"tests/golden/WBV2-P33-000/manifest.json",
"docs/status/WBV2-P33-000.md"
],
"machineOnly": [
"tests/golden/WBV2/task-index.json",
"tests/golden/M15-03A/task-catalog.jsonl"
],
"optionalByNeed": [
"docs/WEB_BLENDER_MODELER_V1_SCOPE.md",
"任务卡列出的精确协议/生产路径",
"任务卡明确命名的长期计划小节"
],
"forbiddenByDefault": [
"完整 CURRENT_EXECUTION_PLAN.md",
"完整 PROJECT_STATUS_AND_NEXT_WORK.md",
"全部 docs/status/*.md",
"完整 parity/WBS 计划",
"README 历史和 test-results/"
]
},
"parent": {
"manifest": {
"schemaVersion": 1,
"task": "WBV2-P33-000",
"parentTask": "WBV2-P32-003",
"status": "done",
"nextTask": "WBV2-P33-001",
"artifactCount": 4
},
"statusSummary": [
"# WBV2-P33-000 status",
"- task: `WBV2-P33-000`; parent: `WBV2-P32-003`; status: `done`",
"- audio resource and particle settings implementation wave authorized",
"- verification receipts and completion overlays: `DEFERRED`",
"- inventory unchanged: `6900` total, `281` legacy completed, `6618` legacy pending, `290/6609` effective carried forward",
"- nextTask: `WBV2-P33-001`"
]
},
"budgets": {
"queueBytes": 4096,
"taskBytes": 1324,
"parentManifestBytes": 24576,
"parentStatusBytes": 6144,
"evidenceFiles": 12,
"evidenceBytes": 8192,
"contextTokens": 3500,
"contextEnvelopeTokens": 1024,
"taskLines": 38,
"taskTokens": 331
},
"size": {
"documents": [
{
"path": "docs/EXECUTION_QUEUE.md",
"bytes": 2803,
"lines": 51,
"tokens": 701
},
{
"path": "docs/tasks/WBV2-P33-001.md",
"bytes": 1324,
"lines": 38,
"tokens": 331
},
{
"path": "tests/golden/WBV2-P33-000/manifest.json",
"bytes": 1236,
"lines": 39,
"tokens": 309
},
{
"path": "docs/status/WBV2-P33-000.md",
"bytes": 364,
"lines": 8,
"tokens": 91
}
],
"sourceTokens": 1432,
"evidenceFiles": 0,
"evidenceBytes": 0,
"evidenceTokens": 0,
"totalTokens": 1432,
"reservedEnvelopeTokens": 1024,
"estimatedContextTokens": 2456,
"serializedContextTokens": 606,
"withinBudget": true
}
}

View File

@@ -0,0 +1,144 @@
{
"schemaVersion": 1,
"planId": "BLENDER_WEB_AUDIO_PARTICLE_IMPLEMENTATION_P33",
"status": "ACTIVE_AUDIO_PARTICLE_QUEUE",
"authority": "user_authorized_implementation_first_execution",
"executionPointer": "docs/EXECUTION_QUEUE.md",
"runtimePolicy": {
"blenderSource": "blender-5.2.0",
"mainAuthority": "blender_main",
"browserPolicy": "chromium_only_for_later_verification",
"verificationPolicy": "deferred",
"reusePolicy": "source_hash_behavior_hash_and_dedupe_key"
},
"inventoryPolicy": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609,
"overlayMutation": "forbidden_during_implementation_wave"
},
"tasks": [
{
"id": "WBV2-P33-000",
"phase": "P33",
"title": "authorize_audio_particle_workbench",
"kind": "enabling",
"owner": "PROGRAM",
"dependsOn": [
"WBV2-P32-003"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-000",
"gate": "G1",
"card": "docs/tasks/WBV2-P33-000.md",
"behavior": "Authorize audio resource and particle settings implementation.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": true
},
{
"id": "WBV2-P33-001",
"phase": "P33",
"title": "implement_audio_resource_authoring",
"kind": "feature",
"owner": "AUDIO",
"dependsOn": [
"WBV2-P33-000"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-001",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-001.md",
"behavior": "Connect typed Sound and Speaker property commands to Blender Main.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-002",
"phase": "P33",
"title": "implement_particle_settings_authoring",
"kind": "feature",
"owner": "PARTICLE",
"dependsOn": [
"WBV2-P33-001"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-002",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-002.md",
"behavior": "Connect bounded ParticleSettings property commands to Blender Main.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-003",
"phase": "P33",
"title": "run_p33_implementation_smoke",
"kind": "enabling",
"owner": "RELEASE",
"dependsOn": [
"WBV2-P33-002"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-003",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-003.md",
"behavior": "Run the bounded production build and source WASM smoke after P33.",
"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"
],
"status": "in_progress",
"ready": true,
"queueMutationAllowed": false
}
]
}

View File

@@ -0,0 +1,34 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-002",
"operation": "IMPLEMENT_AUDIO_PARTICLE_FAMILY",
"status": "PASS",
"family": "PARTICLE.SETTINGS",
"sourceBacked": true,
"implementation": {
"marker": "web_engine_blend_main_set_particle_settings",
"sourcePaths": [
"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",
"web/protocol/web-engine.ts",
"web/app/src/workers/web-engine.worker.ts",
"web/app/src/app/App.tsx"
],
"duplicateShimAdded": false
},
"verification": {
"status": "DEFERRED",
"chromium": false,
"receipts": false,
"completionOverlay": false
},
"inventory": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609
},
"nextTask": "WBV2-P33-003"
}

View File

@@ -0,0 +1,68 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-002",
"parentTask": "WBV2-P33-001",
"operation": "IMPLEMENT_AUDIO_PARTICLE_FAMILY",
"status": "done",
"enablingTask": false,
"parityStateChange": false,
"runtime": "SOURCE_BACKED_AUDIO_PARTICLE_IMPLEMENTATION",
"artifacts": {
"parentManifest": {
"path": "tests/golden/WBV2-P33-001/manifest.json",
"sha256": "13b6b66327fc2fc43d9287d3f828f50a95ee6f63af0e7656182ba1457ed24b24"
},
"source1": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp",
"sha256": "236c2eb8d40a790b0008d5d4c193bb3a504ceca1efee347c94b2af28b5b5e820"
},
"source2": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_main_state.h",
"sha256": "d2d93fb5de091fe0a41438ba423dc6424d20141a0de25ab1d5b1ec68bf9ffd0d"
},
"source3": {
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
"sha256": "1e63bb78a5b216220c610059c3a7c1c5ee20227a777e67c90e32d7a78bf190b3"
},
"source4": {
"path": "web/protocol/web-engine.ts",
"sha256": "43700654bd614c9d8999b6fe52503d8a6c92c80b5472b3ce43ff09dc2a628e6f"
},
"source5": {
"path": "web/app/src/workers/web-engine.worker.ts",
"sha256": "3dbb4f9ca219d185e84b34e0a06aeea2a704b9681ff42c9cab2a7f7e0968fd85"
},
"source6": {
"path": "web/app/src/app/App.tsx",
"sha256": "1310ba2117b5545668d9a127467d5d93a9ce4b28d3d9d525929e3a86455a3120"
},
"report": {
"path": "tests/golden/WBV2-P33-002/implementation-report.json",
"sha256": "630e3819b0098aee3a9b9f44ab38389620a085dc47338ba4f24cffabe4d565db"
},
"status": {
"path": "docs/status/WBV2-P33-002.md",
"sha256": "a8596210d739a1130671eaa1371bc7d745212d7a3a0fc814f2da8eecc8e7b2f5"
},
"plan": {
"path": "tests/golden/WBV2-P33-002/audio-particle-task-plan.json",
"sha256": "fe5fc6328d090925200da9a8258aba7d33a02b9316669c2297088c2fa90a8b34"
},
"taskContext": {
"path": "tests/golden/WBV2-P33-002/task-context.json",
"sha256": "33172b796a119ed694f43d0b6fd5c74754b01b7e07d6b892480a1aea1ce857af"
}
},
"assertions": {
"capabilityFamily": "PARTICLE.SETTINGS",
"sourceBacked": true,
"unsupportedFailsClosed": true,
"verificationDeferred": true,
"completionOverlayWritten": false,
"inventoryTotal": 6900,
"effectiveCompleted": 290,
"effectivePending": 6609,
"historicalReproduction": false
},
"nextTask": "WBV2-P33-003"
}

View File

@@ -0,0 +1,162 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-002",
"parentTask": "WBV2-P33-001",
"status": "in_progress",
"goal": "Connect bounded ParticleSettings property commands to Blender Main.",
"scope": {
"gap": "workflow:implement_particle_settings_authoring",
"ownerFamily": "PARTICLE",
"implementationClass": "SOURCE_BACKED"
},
"commands": [
"node tools/web/check-task-context.mjs --task WBV2-P33-002 --write"
],
"inputPaths": [],
"inputSelection": {
"schemaVersion": 1,
"limits": {
"maxFiles": 12,
"evidenceBytes": 8192,
"contextRemainingBytes": 2748,
"contextRemainingTokens": 686
},
"source": {
"bytes": 7156,
"tokens": 1790
},
"selected": [],
"excluded": [
{
"path": "web/protocol/web-engine.ts",
"bytes": 15780,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tests/golden/WBV2-P33-002/",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "docs/status/WBV2-P33-002.md",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "tests/golden/WBV2-P33-002/manifest.json",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
}
],
"totals": {
"files": 0,
"bytes": 0,
"tokens": 0
}
},
"exitCriteria": [
"real source or WebEngine Main path is wired",
"unsupported input fails closed",
"implementation smoke is reproducible",
"verification remains deferred"
],
"nextTask": "WBV2-P33-003",
"sourceDocuments": {
"queue": "docs/EXECUTION_QUEUE.md",
"taskCard": "docs/tasks/WBV2-P33-002.md",
"taskIndex": "tests/golden/WBV2/task-index.json",
"parentManifest": "tests/golden/WBV2-P33-001/manifest.json",
"parentStatus": "docs/status/WBV2-P33-001.md"
},
"readPolicy": {
"required": [
"docs/EXECUTION_QUEUE.md",
"docs/tasks/WBV2-P33-002.md",
"tests/golden/WBV2-P33-001/manifest.json",
"docs/status/WBV2-P33-001.md"
],
"machineOnly": [
"tests/golden/WBV2/task-index.json",
"tests/golden/M15-03A/task-catalog.jsonl"
],
"optionalByNeed": [
"docs/WEB_BLENDER_MODELER_V1_SCOPE.md",
"任务卡列出的精确协议/生产路径",
"任务卡明确命名的长期计划小节"
],
"forbiddenByDefault": [
"完整 CURRENT_EXECUTION_PLAN.md",
"完整 PROJECT_STATUS_AND_NEXT_WORK.md",
"全部 docs/status/*.md",
"完整 parity/WBS 计划",
"README 历史和 test-results/"
]
},
"parent": {
"manifest": {
"schemaVersion": 1,
"task": "WBV2-P33-001",
"parentTask": "WBV2-P33-000",
"status": "done",
"nextTask": "WBV2-P33-002",
"artifactCount": 12
},
"statusSummary": [
"# WBV2-P33-001 status",
"- task: `WBV2-P33-001`; parent: `WBV2-P33-000`; status: `done`",
"- source-backed audio/particle family: `AUDIO.SOUND_SPEAKER`; marker: `web_engine_blend_main_set_sound_properties`",
"- Chromium receipts and completion overlay: `DEFERRED`",
"- inventory unchanged: `6900/6618`, effective `290/6609`",
"- nextTask: `WBV2-P33-002`"
]
},
"budgets": {
"queueBytes": 4096,
"taskBytes": 1334,
"parentManifestBytes": 24576,
"parentStatusBytes": 6144,
"evidenceFiles": 12,
"evidenceBytes": 8192,
"contextTokens": 3500,
"contextEnvelopeTokens": 1024,
"taskLines": 38,
"taskTokens": 334
},
"size": {
"documents": [
{
"path": "docs/EXECUTION_QUEUE.md",
"bytes": 2803,
"lines": 51,
"tokens": 701
},
{
"path": "docs/tasks/WBV2-P33-002.md",
"bytes": 1334,
"lines": 38,
"tokens": 334
},
{
"path": "tests/golden/WBV2-P33-001/manifest.json",
"bytes": 2679,
"lines": 73,
"tokens": 670
},
{
"path": "docs/status/WBV2-P33-001.md",
"bytes": 340,
"lines": 8,
"tokens": 85
}
],
"sourceTokens": 1790,
"evidenceFiles": 0,
"evidenceBytes": 0,
"evidenceTokens": 0,
"totalTokens": 1790,
"reservedEnvelopeTokens": 1024,
"estimatedContextTokens": 2814,
"serializedContextTokens": 608,
"withinBudget": true
}
}

View File

@@ -0,0 +1,174 @@
{
"schemaVersion": 1,
"planId": "BLENDER_WEB_AUDIO_PARTICLE_IMPLEMENTATION_P33",
"status": "ACTIVE_AUDIO_PARTICLE_QUEUE",
"authority": "user_authorized_implementation_first_execution",
"executionPointer": "docs/EXECUTION_QUEUE.md",
"runtimePolicy": {
"blenderSource": "blender-5.2.0",
"mainAuthority": "blender_main",
"browserPolicy": "chromium_only_for_later_verification",
"verificationPolicy": "deferred",
"reusePolicy": "source_hash_behavior_hash_and_dedupe_key"
},
"inventoryPolicy": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609,
"overlayMutation": "forbidden_during_implementation_wave"
},
"tasks": [
{
"id": "WBV2-P33-000",
"phase": "P33",
"title": "authorize_audio_particle_workbench",
"kind": "enabling",
"owner": "PROGRAM",
"dependsOn": [
"WBV2-P32-003"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-000",
"gate": "G1",
"card": "docs/tasks/WBV2-P33-000.md",
"behavior": "Authorize audio resource and particle settings implementation.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": true
},
{
"id": "WBV2-P33-001",
"phase": "P33",
"title": "implement_audio_resource_authoring",
"kind": "feature",
"owner": "AUDIO",
"dependsOn": [
"WBV2-P33-000"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-001",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-001.md",
"behavior": "Connect typed Sound and Speaker property commands to Blender Main.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-002",
"phase": "P33",
"title": "implement_particle_settings_authoring",
"kind": "feature",
"owner": "PARTICLE",
"dependsOn": [
"WBV2-P33-001"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-002",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-002.md",
"behavior": "Connect bounded ParticleSettings property commands to Blender Main.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P33-003",
"phase": "P33",
"title": "run_p33_implementation_smoke",
"kind": "enabling",
"owner": "RELEASE",
"dependsOn": [
"WBV2-P33-002"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p33-003",
"gate": "IMPLEMENTATION",
"card": "docs/tasks/WBV2-P33-003.md",
"behavior": "Run the bounded production build and source WASM smoke after P33.",
"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"
],
"status": "done",
"ready": false,
"queueMutationAllowed": false
},
{
"id": "WBV2-P34-000",
"phase": "P34",
"title": "authorize_next_implementation_wave",
"kind": "enabling",
"owner": "PROGRAM",
"dependsOn": [
"WBV2-P33-003"
],
"parityId": null,
"implementationClass": "SOURCE_BACKED",
"parallelGroup": "p34-000",
"gate": "G1",
"card": "docs/tasks/WBV2-P34-000.md",
"behavior": "Authorize the next source-backed implementation 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"
],
"status": "in_progress",
"ready": true,
"queueMutationAllowed": true
}
]
}

View File

@@ -0,0 +1,30 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-003",
"operation": "RUN_AUDIO_PARTICLE_IMPLEMENTATION_SMOKE",
"status": "PASS",
"family": "P33.IMPLEMENTATION_SMOKE",
"sourceBacked": true,
"implementation": {
"marker": "applyCommand",
"sourcePaths": [
"web/app/src/workers/web-engine.worker.ts",
"web/app/src/vendor/blender/web_engine.wasm"
],
"duplicateShimAdded": false
},
"verification": {
"status": "DEFERRED",
"chromium": false,
"receipts": false,
"completionOverlay": false
},
"inventory": {
"total": 6900,
"legacyCompleted": 281,
"legacyPending": 6618,
"effectiveCompleted": 290,
"effectivePending": 6609
},
"nextTask": "WBV2-P34-000"
}

View File

@@ -0,0 +1,52 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-003",
"parentTask": "WBV2-P33-002",
"operation": "RUN_AUDIO_PARTICLE_IMPLEMENTATION_SMOKE",
"status": "done",
"enablingTask": false,
"parityStateChange": false,
"runtime": "SOURCE_BACKED_AUDIO_PARTICLE_IMPLEMENTATION",
"artifacts": {
"parentManifest": {
"path": "tests/golden/WBV2-P33-002/manifest.json",
"sha256": "21b1e15eabebe0f14d453b86b8cd4f4a150403ba7a9ea737944422f4b487ca4d"
},
"source1": {
"path": "web/app/src/workers/web-engine.worker.ts",
"sha256": "3dbb4f9ca219d185e84b34e0a06aeea2a704b9681ff42c9cab2a7f7e0968fd85"
},
"source2": {
"path": "web/app/src/vendor/blender/web_engine.wasm",
"sha256": "ff36d8183cfd9112e67e104f5bf1ec6577ef605bdfcf5239a1cea8504caf7058"
},
"report": {
"path": "tests/golden/WBV2-P33-003/implementation-report.json",
"sha256": "586cb86074fc1f178d599311b0e2b03aa531407b19ce5a990fdd6db4dd9705d9"
},
"status": {
"path": "docs/status/WBV2-P33-003.md",
"sha256": "47bb54e4d073d14e6641e0f1db09baac06e362625163cc99095e1108caf346cf"
},
"plan": {
"path": "tests/golden/WBV2-P33-003/audio-particle-task-plan.json",
"sha256": "a563492f7b2dbea99503f1ce069fa7961898cfcc617c6ce5e7a8c81b29b8bc1a"
},
"taskContext": {
"path": "tests/golden/WBV2-P33-003/task-context.json",
"sha256": "2b43140fd43f0a5a9e52438bd020d55933b7ca4676ac5a0d136adca258bbd677"
}
},
"assertions": {
"capabilityFamily": "P33.IMPLEMENTATION_SMOKE",
"sourceBacked": true,
"unsupportedFailsClosed": true,
"verificationDeferred": true,
"completionOverlayWritten": false,
"inventoryTotal": 6900,
"effectiveCompleted": 290,
"effectivePending": 6609,
"historicalReproduction": false
},
"nextTask": "WBV2-P34-000"
}

View File

@@ -0,0 +1,162 @@
{
"schemaVersion": 1,
"task": "WBV2-P33-003",
"parentTask": "WBV2-P33-002",
"status": "in_progress",
"goal": "Run the bounded production build and source WASM smoke after P33.",
"scope": {
"gap": "workflow:run_p33_implementation_smoke",
"ownerFamily": "RELEASE",
"implementationClass": "SOURCE_BACKED"
},
"commands": [
"node tools/web/check-task-context.mjs --task WBV2-P33-003 --write"
],
"inputPaths": [],
"inputSelection": {
"schemaVersion": 1,
"limits": {
"maxFiles": 12,
"evidenceBytes": 8192,
"contextRemainingBytes": 2930,
"contextRemainingTokens": 731
},
"source": {
"bytes": 6974,
"tokens": 1745
},
"selected": [],
"excluded": [
{
"path": "web/protocol/web-engine.ts",
"bytes": 15780,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tests/golden/WBV2-P33-003/",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "docs/status/WBV2-P33-003.md",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "tests/golden/WBV2-P33-003/manifest.json",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
}
],
"totals": {
"files": 0,
"bytes": 0,
"tokens": 0
}
},
"exitCriteria": [
"real source or WebEngine Main path is wired",
"unsupported input fails closed",
"implementation smoke is reproducible",
"verification remains deferred"
],
"nextTask": "WBV2-P34-000",
"sourceDocuments": {
"queue": "docs/EXECUTION_QUEUE.md",
"taskCard": "docs/tasks/WBV2-P33-003.md",
"taskIndex": "tests/golden/WBV2/task-index.json",
"parentManifest": "tests/golden/WBV2-P33-002/manifest.json",
"parentStatus": "docs/status/WBV2-P33-002.md"
},
"readPolicy": {
"required": [
"docs/EXECUTION_QUEUE.md",
"docs/tasks/WBV2-P33-003.md",
"tests/golden/WBV2-P33-002/manifest.json",
"docs/status/WBV2-P33-002.md"
],
"machineOnly": [
"tests/golden/WBV2/task-index.json",
"tests/golden/M15-03A/task-catalog.jsonl"
],
"optionalByNeed": [
"docs/WEB_BLENDER_MODELER_V1_SCOPE.md",
"任务卡列出的精确协议/生产路径",
"任务卡明确命名的长期计划小节"
],
"forbiddenByDefault": [
"完整 CURRENT_EXECUTION_PLAN.md",
"完整 PROJECT_STATUS_AND_NEXT_WORK.md",
"全部 docs/status/*.md",
"完整 parity/WBS 计划",
"README 历史和 test-results/"
]
},
"parent": {
"manifest": {
"schemaVersion": 1,
"task": "WBV2-P33-002",
"parentTask": "WBV2-P33-001",
"status": "done",
"nextTask": "WBV2-P33-003",
"artifactCount": 11
},
"statusSummary": [
"# WBV2-P33-002 status",
"- task: `WBV2-P33-002`; parent: `WBV2-P33-001`; status: `done`",
"- source-backed audio/particle family: `PARTICLE.SETTINGS`; marker: `web_engine_blend_main_set_particle_settings`",
"- Chromium receipts and completion overlay: `DEFERRED`",
"- inventory unchanged: `6900/6618`, effective `290/6609`",
"- nextTask: `WBV2-P33-003`"
]
},
"budgets": {
"queueBytes": 4096,
"taskBytes": 1313,
"parentManifestBytes": 24576,
"parentStatusBytes": 6144,
"evidenceFiles": 12,
"evidenceBytes": 8192,
"contextTokens": 3500,
"contextEnvelopeTokens": 1024,
"taskLines": 38,
"taskTokens": 329
},
"size": {
"documents": [
{
"path": "docs/EXECUTION_QUEUE.md",
"bytes": 2803,
"lines": 51,
"tokens": 701
},
{
"path": "docs/tasks/WBV2-P33-003.md",
"bytes": 1313,
"lines": 38,
"tokens": 329
},
{
"path": "tests/golden/WBV2-P33-002/manifest.json",
"bytes": 2519,
"lines": 69,
"tokens": 630
},
{
"path": "docs/status/WBV2-P33-002.md",
"bytes": 339,
"lines": 8,
"tokens": 85
}
],
"sourceTokens": 1745,
"evidenceFiles": 0,
"evidenceBytes": 0,
"evidenceTokens": 0,
"totalTokens": 1745,
"reservedEnvelopeTokens": 1024,
"estimatedContextTokens": 2769,
"serializedContextTokens": 605,
"withinBudget": true
}
}

View File

@@ -0,0 +1,162 @@
{
"schemaVersion": 1,
"task": "WBV2-P34-000",
"parentTask": "WBV2-P33-003",
"status": "in_progress",
"goal": "Authorize the next source-backed implementation wave.",
"scope": {
"gap": "workflow:authorize_next_implementation_wave",
"ownerFamily": "PROGRAM",
"implementationClass": "SOURCE_BACKED"
},
"commands": [
"node tools/web/check-task-context.mjs --task WBV2-P34-000 --write"
],
"inputPaths": [],
"inputSelection": {
"schemaVersion": 1,
"limits": {
"maxFiles": 12,
"evidenceBytes": 8192,
"contextRemainingBytes": 3865,
"contextRemainingTokens": 965
},
"source": {
"bytes": 6039,
"tokens": 1511
},
"selected": [],
"excluded": [
{
"path": "web/protocol/web-engine.ts",
"bytes": 15780,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tests/golden/WBV2-P34-000/",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "docs/status/WBV2-P34-000.md",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "tests/golden/WBV2-P34-000/manifest.json",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
}
],
"totals": {
"files": 0,
"bytes": 0,
"tokens": 0
}
},
"exitCriteria": [
"real source or WebEngine Main path is wired",
"unsupported input fails closed",
"implementation smoke is reproducible",
"verification remains deferred"
],
"nextTask": null,
"sourceDocuments": {
"queue": "docs/EXECUTION_QUEUE.md",
"taskCard": "docs/tasks/WBV2-P34-000.md",
"taskIndex": "tests/golden/WBV2/task-index.json",
"parentManifest": "tests/golden/WBV2-P33-003/manifest.json",
"parentStatus": "docs/status/WBV2-P33-003.md"
},
"readPolicy": {
"required": [
"docs/EXECUTION_QUEUE.md",
"docs/tasks/WBV2-P34-000.md",
"tests/golden/WBV2-P33-003/manifest.json",
"docs/status/WBV2-P33-003.md"
],
"machineOnly": [
"tests/golden/WBV2/task-index.json",
"tests/golden/M15-03A/task-catalog.jsonl"
],
"optionalByNeed": [
"docs/WEB_BLENDER_MODELER_V1_SCOPE.md",
"任务卡列出的精确协议/生产路径",
"任务卡明确命名的长期计划小节"
],
"forbiddenByDefault": [
"完整 CURRENT_EXECUTION_PLAN.md",
"完整 PROJECT_STATUS_AND_NEXT_WORK.md",
"全部 docs/status/*.md",
"完整 parity/WBS 计划",
"README 历史和 test-results/"
]
},
"parent": {
"manifest": {
"schemaVersion": 1,
"task": "WBV2-P33-003",
"parentTask": "WBV2-P33-002",
"status": "done",
"nextTask": "WBV2-P34-000",
"artifactCount": 7
},
"statusSummary": [
"# WBV2-P33-003 status",
"- task: `WBV2-P33-003`; parent: `WBV2-P33-002`; status: `done`",
"- source-backed audio/particle family: `P33.IMPLEMENTATION_SMOKE`; marker: `applyCommand`",
"- Chromium receipts and completion overlay: `DEFERRED`",
"- inventory unchanged: `6900/6618`, effective `290/6609`",
"- nextTask: `WBV2-P34-000`"
]
},
"budgets": {
"queueBytes": 4096,
"taskBytes": 1080,
"parentManifestBytes": 24576,
"parentStatusBytes": 6144,
"evidenceFiles": 12,
"evidenceBytes": 8192,
"contextTokens": 3500,
"contextEnvelopeTokens": 1024,
"taskLines": 37,
"taskTokens": 270
},
"size": {
"documents": [
{
"path": "docs/EXECUTION_QUEUE.md",
"bytes": 2803,
"lines": 51,
"tokens": 701
},
{
"path": "docs/tasks/WBV2-P34-000.md",
"bytes": 1080,
"lines": 37,
"tokens": 270
},
{
"path": "tests/golden/WBV2-P33-003/manifest.json",
"bytes": 1841,
"lines": 53,
"tokens": 461
},
{
"path": "docs/status/WBV2-P33-003.md",
"bytes": 315,
"lines": 8,
"tokens": 79
}
],
"sourceTokens": 1511,
"evidenceFiles": 0,
"evidenceBytes": 0,
"evidenceTokens": 0,
"totalTokens": 1511,
"reservedEnvelopeTokens": 1024,
"estimatedContextTokens": 2535,
"serializedContextTokens": 600,
"withinBudget": true
}
}

View File

@@ -1,5 +1,5 @@
{"id":"WBV2-P32-000","gapId":"workflow:authorize_scene_context_workbench","ownerFamily":"PROGRAM","sourceTask":"P32","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P32-001","gapId":"workflow:implement_scene_context_workbench","ownerFamily":"WORKFLOW","sourceTask":"P32","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P32-002","gapId":"workflow:implement_release_status_workbench","ownerFamily":"RELEASE","sourceTask":"P32","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P32-003","gapId":"workflow:run_p32_implementation_smoke","ownerFamily":"RELEASE","sourceTask":"P32","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P33-000","gapId":"workflow:authorize_next_implementation_wave","ownerFamily":"PROGRAM","sourceTask":"P33","state":"active","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P33-000","gapId":"workflow:authorize_audio_particle_workbench","ownerFamily":"PROGRAM","sourceTask":"P33","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P33-001","gapId":"workflow:implement_audio_resource_authoring","ownerFamily":"AUDIO","sourceTask":"P33","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P33-002","gapId":"workflow:implement_particle_settings_authoring","ownerFamily":"PARTICLE","sourceTask":"P33","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P33-003","gapId":"workflow:run_p33_implementation_smoke","ownerFamily":"RELEASE","sourceTask":"P33","state":"completed","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}
{"id":"WBV2-P34-000","gapId":"workflow:authorize_next_implementation_wave","ownerFamily":"PROGRAM","sourceTask":"P34","state":"active","targetImplementationClass":"SOURCE_BACKED","exitCriteria":["real source or WebEngine Main path is wired","unsupported input fails closed","implementation smoke is reproducible","verification remains deferred"]}

View File

@@ -1 +1 @@
{"schemaVersion":1,"operation":"BLENDER_WEB_CAPABILITY_TASK_INDEX","source":{"path":"tests/golden/WBV2-P32-003/scene-context-task-plan.json","sha256":"eca8a703b2933ce58fedb74fcd566da6aaf6e037d944c9a33c5222991aec8d61"},"catalog":{"path":"tests/golden/WBV2/task-catalog.jsonl","sha256":"a92e7960c80069cdff88cd964f269cab235356f6b1ecfde6f67c267a5b457c64"},"taskCount":5,"activeTask":"WBV2-P33-000","entries":{"WBV2-P32-000":{"line":0,"offset":0,"length":349,"previous":"WBV2-P31-003","next":"WBV2-P32-001"},"WBV2-P32-001":{"line":1,"offset":349,"length":350,"previous":"WBV2-P32-000","next":"WBV2-P32-002"},"WBV2-P32-002":{"line":2,"offset":699,"length":350,"previous":"WBV2-P32-001","next":"WBV2-P32-003"},"WBV2-P32-003":{"line":3,"offset":1049,"length":344,"previous":"WBV2-P32-002","next":"WBV2-P33-000"},"WBV2-P33-000":{"line":4,"offset":1393,"length":347,"previous":"WBV2-P32-003","next":null}}}
{"schemaVersion":1,"operation":"BLENDER_WEB_CAPABILITY_TASK_INDEX","source":{"path":"tests/golden/WBV2-P33-003/audio-particle-task-plan.json","sha256":"a563492f7b2dbea99503f1ce069fa7961898cfcc617c6ce5e7a8c81b29b8bc1a"},"catalog":{"path":"tests/golden/WBV2/task-catalog.jsonl","sha256":"1a55001ea27381135ece1956e819a98d45e9c3061e4491cd0ac5cfe1b628f7ae"},"taskCount":5,"activeTask":"WBV2-P34-000","entries":{"WBV2-P33-000":{"line":0,"offset":0,"length":350,"previous":"WBV2-P32-003","next":"WBV2-P33-001"},"WBV2-P33-001":{"line":1,"offset":350,"length":348,"previous":"WBV2-P33-000","next":"WBV2-P33-002"},"WBV2-P33-002":{"line":2,"offset":698,"length":354,"previous":"WBV2-P33-001","next":"WBV2-P33-003"},"WBV2-P33-003":{"line":3,"offset":1052,"length":344,"previous":"WBV2-P33-002","next":"WBV2-P34-000"},"WBV2-P34-000":{"line":4,"offset":1396,"length":347,"previous":"WBV2-P33-003","next":null}}}