181 lines
6.0 KiB
JSON
181 lines
6.0 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"task": "WBV2-P7-003",
|
|
"parentTask": "WBV2-P7-002",
|
|
"status": "in_progress",
|
|
"goal": "Make the same minimal fixture produce observable workflow:full_parity_candidate_release_gate data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.",
|
|
"scope": {
|
|
"gap": "workflow:full_parity_candidate_release_gate",
|
|
"ownerFamily": "RELEASE",
|
|
"implementationClass": "LOCAL_BOUNDED"
|
|
},
|
|
"commands": [
|
|
"build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/WBV2-P7-003.py -- tests/files/web/generated/WBV2-P7-003-workflow-full_parity_candidate_release_gate.blend",
|
|
"npm --prefix web run test:generated-gap -- --task WBV2-P7-003",
|
|
"node tools/web/check-generated-gap.mjs --task WBV2-P7-003"
|
|
],
|
|
"inputPaths": [],
|
|
"inputSelection": {
|
|
"schemaVersion": 1,
|
|
"limits": {
|
|
"maxFiles": 12,
|
|
"evidenceBytes": 8192,
|
|
"contextRemainingBytes": 749,
|
|
"contextRemainingTokens": 186
|
|
},
|
|
"source": {
|
|
"bytes": 9155,
|
|
"tokens": 2290
|
|
},
|
|
"selected": [],
|
|
"excluded": [
|
|
{
|
|
"path": "tests/files/web/generated/WBV2-P7-003-workflow-full_parity_candidate_release_gate.blend",
|
|
"bytes": 87661,
|
|
"reason": "EVIDENCE_BYTE_BUDGET"
|
|
},
|
|
{
|
|
"path": "tools/web/generated/WBV2-P7-003.py",
|
|
"bytes": 4484,
|
|
"reason": "CONTEXT_REMAINING_SPACE"
|
|
},
|
|
{
|
|
"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp",
|
|
"bytes": 290939,
|
|
"reason": "EVIDENCE_BYTE_BUDGET"
|
|
},
|
|
{
|
|
"path": "tools/web/check-generated-gap.mjs",
|
|
"bytes": 1054244,
|
|
"reason": "EVIDENCE_BYTE_BUDGET"
|
|
},
|
|
{
|
|
"path": "tests/golden/WBV2-P7-003/",
|
|
"bytes": null,
|
|
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
|
},
|
|
{
|
|
"path": "docs/status/WBV2-P7-003.md",
|
|
"bytes": null,
|
|
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
|
},
|
|
{
|
|
"path": "tests/golden/WBV2-P7-003/manifest.json",
|
|
"bytes": null,
|
|
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
|
}
|
|
],
|
|
"totals": {
|
|
"files": 0,
|
|
"bytes": 0,
|
|
"tokens": 0
|
|
}
|
|
},
|
|
"exitCriteria": [
|
|
"all claims bind to evidence",
|
|
"blocked/excluded/server classes remain explicit",
|
|
"queue and protected hashes pass"
|
|
],
|
|
"nextTask": null,
|
|
"sourceDocuments": {
|
|
"queue": "docs/EXECUTION_QUEUE.md",
|
|
"taskCard": "docs/tasks/WBV2-P7-003.md",
|
|
"taskIndex": "tests/golden/WBV2/task-index.json",
|
|
"parentManifest": "tests/golden/WBV2-P7-002/manifest.json",
|
|
"parentStatus": "docs/status/WBV2-P7-002.md"
|
|
},
|
|
"readPolicy": {
|
|
"required": [
|
|
"docs/EXECUTION_QUEUE.md",
|
|
"docs/tasks/WBV2-P7-003.md",
|
|
"tests/golden/WBV2-P7-002/manifest.json",
|
|
"docs/status/WBV2-P7-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-P7-002",
|
|
"parentTask": "WBV2-P7-001",
|
|
"status": "done",
|
|
"nextTask": "WBV2-P7-003",
|
|
"artifactCount": 13
|
|
},
|
|
"statusSummary": [
|
|
"# WBV2-P7-002 status",
|
|
"- task: `WBV2-P7-002`; parent: `WBV2-P7-001`; status: `done`",
|
|
"- gap: `workflow:generate_atomic_family_gap_queue`; implementationClass: `LOCAL_BOUNDED`",
|
|
"- fixture: `tests/files/web/generated/WBV2-P7-002-workflow-generate_atomic_family_gap_queue.blend`",
|
|
"## Evidence",
|
|
"The P7-001 inventory is expanded into 45 deterministic atomic records: 15 capability families multiplied by `desktopPositive`, `wasmMutation`, and `saveReopenExact`. The queue has exactly one `active + ready` task and 44 `pending + not ready` tasks, with stable capability/behavior ordering and parent manifest/receipt SHA bindings. Opening the blend only reads this queue receipt; it never mutates the execution pointer.",
|
|
"Blender desktop and WASM agree on all 45 records and the parent hashes. Save/reopen is exact. The reader and SceneIR validation reject malformed schema, duplicate IDs, bad parent hashes, invalid ordering, or multiple active tasks before exposure. Malformed blend input rejects without Main mutation. Cancellation, over-budget, hash-drift, and queue mutation remain blocked.",
|
|
"Quick CI is `READY` (7/7 lanes, including 128 isolated unit files); typecheck and lint pass after the explicit numeric guard for the SceneIR index-signature field."
|
|
]
|
|
},
|
|
"budgets": {
|
|
"queueBytes": 4096,
|
|
"taskBytes": 1834,
|
|
"parentManifestBytes": 24576,
|
|
"parentStatusBytes": 6144,
|
|
"evidenceFiles": 12,
|
|
"evidenceBytes": 8192,
|
|
"contextTokens": 3500,
|
|
"contextEnvelopeTokens": 1024,
|
|
"taskLines": 38,
|
|
"taskTokens": 459
|
|
},
|
|
"size": {
|
|
"documents": [
|
|
{
|
|
"path": "docs/EXECUTION_QUEUE.md",
|
|
"bytes": 2799,
|
|
"lines": 51,
|
|
"tokens": 700
|
|
},
|
|
{
|
|
"path": "docs/tasks/WBV2-P7-003.md",
|
|
"bytes": 1834,
|
|
"lines": 38,
|
|
"tokens": 459
|
|
},
|
|
{
|
|
"path": "tests/golden/WBV2-P7-002/manifest.json",
|
|
"bytes": 2472,
|
|
"lines": 2,
|
|
"tokens": 618
|
|
},
|
|
{
|
|
"path": "docs/status/WBV2-P7-002.md",
|
|
"bytes": 2050,
|
|
"lines": 27,
|
|
"tokens": 513
|
|
}
|
|
],
|
|
"sourceTokens": 2290,
|
|
"evidenceFiles": 0,
|
|
"evidenceBytes": 0,
|
|
"evidenceTokens": 0,
|
|
"totalTokens": 2290,
|
|
"reservedEnvelopeTokens": 1024,
|
|
"estimatedContextTokens": 3314,
|
|
"serializedContextTokens": 707,
|
|
"withinBudget": true
|
|
}
|
|
}
|