Rebuild local Blender WASM environment and recovery evidence
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-27 20:15:55 +08:00
parent a081c68c87
commit c2c65d3a09
376 changed files with 241951 additions and 114 deletions

View File

@@ -0,0 +1,89 @@
{
"blenderVersion": "5.2.0 LTS",
"canonical": {
"animation": {
"actionName": "WBV2P3004RoundTripAction",
"channelCount": 3,
"frameRange": [
1,
20
]
},
"material": {
"baseColor": [
0.22,
0.48,
0.82,
1.0
],
"imagePacked": true,
"metallic": 0.35,
"name": "WBV2P3004PBRMaterial",
"roughness": 0.42
},
"mesh": {
"name": "WBV2P3004RoundTripMesh",
"shapeKeys": [
{
"name": "WBV2P3004Morph",
"value": 0.5,
"vertexCount": 8
}
],
"triangleCount": 12,
"uvLayers": [
"WBV2P3004UV"
],
"vertexCount": 8
},
"skin": {
"bones": [
"WBV2P3004Root",
"WBV2P3004Tip"
],
"parents": {
"WBV2P3004Root": null,
"WBV2P3004Tip": "WBV2P3004Root"
},
"vertexGroups": [
"WBV2P3004Root",
"WBV2P3004Tip"
],
"weightSums": [
[
1.0
],
[
1.0
],
[
1.0
],
[
1.0
],
[
0.25,
0.75
],
[
0.25,
0.75
],
[
0.25,
0.75
],
[
0.25,
0.75
]
]
}
},
"fixtureSha256": "64279933b4c2fb00b02496f8e1322893a6c95f8fb99a996c06b8f8323bfbec5d",
"operation": "IO_GLB_ROUNDTRIP_DESKTOP",
"saveReopen": "EXACT",
"schemaVersion": 1,
"task": "WBV2-P3-004"
}

View File

@@ -0,0 +1,113 @@
{
"schemaVersion": 1,
"task": "WBV2-P3-004",
"operation": "IO_GLB_ROUNDTRIP_LOCAL_EXACT",
"fixture": {
"path": "tests/files/web/generated/WBV2-P3-004-IO.GLB_ROUNDTRIP.blend",
"sha256": "64279933b4c2fb00b02496f8e1322893a6c95f8fb99a996c06b8f8323bfbec5d"
},
"desktop": {
"status": "EXACT",
"report": "tests/golden/WBV2-P3-004/glb-desktop-report.json",
"canonical": {
"animation": {
"actionName": "WBV2P3004RoundTripAction",
"channelCount": 3,
"frameRange": [
1,
20
]
},
"material": {
"baseColor": [
0.22,
0.48,
0.82,
1
],
"imagePacked": true,
"metallic": 0.35,
"name": "WBV2P3004PBRMaterial",
"roughness": 0.42
},
"mesh": {
"name": "WBV2P3004RoundTripMesh",
"shapeKeys": [
{
"name": "WBV2P3004Morph",
"value": 0.5,
"vertexCount": 8
}
],
"triangleCount": 12,
"uvLayers": [
"WBV2P3004UV"
],
"vertexCount": 8
},
"skin": {
"bones": [
"WBV2P3004Root",
"WBV2P3004Tip"
],
"parents": {
"WBV2P3004Root": null,
"WBV2P3004Tip": "WBV2P3004Root"
},
"vertexGroups": [
"WBV2P3004Root",
"WBV2P3004Tip"
],
"weightSums": [
[
1
],
[
1
],
[
1
],
[
1
],
[
0.25,
0.75
],
[
0.25,
0.75
],
[
0.25,
0.75
],
[
0.25,
0.75
]
]
}
},
"saveReopen": "EXACT"
},
"wasm": {
"status": "EXACT",
"glbBytes": 7540,
"magic": "glTF",
"meshCount": 1,
"skinCount": 1,
"morphTargetCount": 1,
"animationCount": 1,
"animationChannelCount": 1,
"comparison": "EXACT"
},
"negative": {
"malformed": "REJECTED",
"externalUri": "REJECTED_GLB_EXTERNAL_URI_BLOCKED",
"overBudget": "REJECTED_GLB_IMPORT_BUDGET_EXCEEDED"
},
"saveReopen": "EXACT",
"nextTask": "WBV2-P3-005"
}

View File

@@ -0,0 +1,33 @@
{
"schemaVersion": 1,
"task": "WBV2-P3-004",
"parentTask": "WBV2-P3-003",
"enablingTask": false,
"parityStateChange": true,
"runtime": "BLENDER_5_2_WASM_MAIN",
"operation": "IO_GLB_ROUNDTRIP_LOCAL_EXACT",
"status": "done",
"artifacts": {
"parentManifest": {"path": "tests/golden/WBV2-P3-003/manifest.json", "sha256": "1b97d2ca9add58a6185a21137729edc4c8b11a2d21be1682793e3d05b9ef9011"},
"fixture": {"path": "tests/files/web/generated/WBV2-P3-004-IO.GLB_ROUNDTRIP.blend", "sha256": "64279933b4c2fb00b02496f8e1322893a6c95f8fb99a996c06b8f8323bfbec5d"},
"generator": {"path": "tools/web/generated/WBV2-P3-004.py", "sha256": "b5406e2c3612264c1708f2d8bfb7b90a39b8b179a0beee6fc5a21108e7d1c78c"},
"desktopChecker": {"path": "tools/web/check-wbv2-p3-004-desktop.py", "sha256": "ff45538a4695331c36f3332a29dc3f745d2cf70c23667ae79988eae654ddae13"},
"productionReader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "7c36f36872248226ea6c96c281c49fd7b58af28e5b6d52f6f5ef10e391daedf3"},
"checker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "7c7a0f4a499a186dac777e0f5c1d7b33dba5daa2b507c9a76f560c5c243942e4"},
"preflight": {"path": "tools/web/generated-gap-preflight.mjs", "sha256": "158e60e76aace9dd55da0ee5edf986886a7fa288bd256c31695d91064cd83e2a"},
"wasmJavaScript": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "e2b21fcc3c9d098cfb343fc682776c2ed95678064e95eabd71409a8b3284cce0"},
"wasmBinary": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "25bc1e286fd3b72c2c7c082b85a29b2d0bb109588a6dc0de5be94fcdc37cc88c"},
"report": {"path": "tests/golden/WBV2-P3-004/glb-report.json", "sha256": "9f642f50c7764928909346e91ab11becc5e7e3794760e53ea1d3cef9055e8626"},
"desktopReport": {"path": "tests/golden/WBV2-P3-004/glb-desktop-report.json", "sha256": "cae8772fde2b760ed0dbbb72cbbaeaccba185470267689b283191e549544a18d"},
"status": {"path": "docs/status/WBV2-P3-004.md", "sha256": "b219d5102db552d7cb0fb2e0697f6a24ccb071beb5a9c0a1c4b87ca513fdd20a"},
"taskContext": {"path": "tests/golden/WBV2-P3-004/task-context.json", "sha256": "5c60c5b6f37956f7578723d7ec69374dcf2b19d177cac967b876e427d6791d05"},
"commandLog": {"path": "tests/golden/WBV2-P3-004/command.log", "sha256": "2b4fb1a8dc840ebe2ddecff73727081af0a4690c0deed0946f99fdd2f9b3fbbe"}
},
"negativeMatrix": {
"malformed": "REJECTED_GLB_JSON",
"externalUri": "REJECTED_GLB_EXTERNAL_URI_BLOCKED",
"overBudget": "REJECTED_GLB_IMPORT_BUDGET_EXCEEDED",
"saveReopen": "EXACT"
},
"nextTask": "WBV2-P3-005"
}

View File

@@ -0,0 +1,180 @@
{
"schemaVersion": 1,
"task": "WBV2-P3-004",
"parentTask": "WBV2-P3-003",
"status": "in_progress",
"goal": "Make the same minimal fixture produce observable IO.GLB_ROUNDTRIP 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": "IO.GLB_ROUNDTRIP",
"ownerFamily": "IO",
"implementationClass": "LOCAL_EXACT"
},
"commands": [
"build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/WBV2-P3-004.py -- tests/files/web/generated/WBV2-P3-004-IO.GLB_ROUNDTRIP.blend",
"npm --prefix web run test:generated-gap -- --task WBV2-P3-004",
"node tools/web/check-generated-gap.mjs --task WBV2-P3-004"
],
"inputPaths": [],
"inputSelection": {
"schemaVersion": 1,
"limits": {
"maxFiles": 12,
"evidenceBytes": 8192,
"contextRemainingBytes": 1267,
"contextRemainingTokens": 316
},
"source": {
"bytes": 8637,
"tokens": 2160
},
"selected": [],
"excluded": [
{
"path": "tests/files/web/generated/WBV2-P3-004-IO.GLB_ROUNDTRIP.blend",
"bytes": 91036,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tools/web/generated/WBV2-P3-004.py",
"bytes": 4214,
"reason": "CONTEXT_REMAINING_SPACE"
},
{
"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp",
"bytes": 255189,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tools/web/check-generated-gap.mjs",
"bytes": 948821,
"reason": "EVIDENCE_BYTE_BUDGET"
},
{
"path": "tests/golden/WBV2-P3-004/",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "docs/status/WBV2-P3-004.md",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
},
{
"path": "tests/golden/WBV2-P3-004/manifest.json",
"bytes": null,
"reason": "GENERATED_EVIDENCE_OUTPUT"
}
],
"totals": {
"files": 0,
"bytes": 0,
"tokens": 0
}
},
"exitCriteria": [
"roundtrip canonical graph matches",
"sparse/external URI/budget negatives reject",
"no silent loss"
],
"nextTask": "WBV2-P3-005",
"sourceDocuments": {
"queue": "docs/EXECUTION_QUEUE.md",
"taskCard": "docs/tasks/WBV2-P3-004.md",
"taskIndex": "tests/golden/WBV2/task-index.json",
"parentManifest": "tests/golden/WBV2-P3-003/manifest.json",
"parentStatus": "docs/status/WBV2-P3-003.md"
},
"readPolicy": {
"required": [
"docs/EXECUTION_QUEUE.md",
"docs/tasks/WBV2-P3-004.md",
"tests/golden/WBV2-P3-003/manifest.json",
"docs/status/WBV2-P3-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-P3-003",
"parentTask": "WBV2-P3-002",
"status": "done",
"nextTask": "WBV2-P3-004",
"artifactCount": 14
},
"statusSummary": [
"# WBV2-P3-003 status",
"- task: `WBV2-P3-003`",
"- parent: `WBV2-P3-002`",
"- parity: `RIG.POSE_SKIN`",
"- implementationClass: `LOCAL_BOUNDED`",
"- status: `done`",
"- fixture: `tests/files/web/generated/WBV2-P3-003-RIG.POSE_SKIN.blend`",
"## Evidence"
]
},
"budgets": {
"queueBytes": 4096,
"taskBytes": 1692,
"parentManifestBytes": 24576,
"parentStatusBytes": 6144,
"evidenceFiles": 12,
"evidenceBytes": 8192,
"contextTokens": 3500,
"contextEnvelopeTokens": 1024,
"taskLines": 38,
"taskTokens": 423
},
"size": {
"documents": [
{
"path": "docs/EXECUTION_QUEUE.md",
"bytes": 2799,
"lines": 51,
"tokens": 700
},
{
"path": "docs/tasks/WBV2-P3-004.md",
"bytes": 1692,
"lines": 38,
"tokens": 423
},
{
"path": "tests/golden/WBV2-P3-003/manifest.json",
"bytes": 2647,
"lines": 34,
"tokens": 662
},
{
"path": "docs/status/WBV2-P3-003.md",
"bytes": 1499,
"lines": 29,
"tokens": 375
}
],
"sourceTokens": 2160,
"evidenceFiles": 0,
"evidenceBytes": 0,
"evidenceTokens": 0,
"totalTokens": 2160,
"reservedEnvelopeTokens": 1024,
"estimatedContextTokens": 3184,
"serializedContextTokens": 684,
"withinBudget": true
}
}