Advance deduplicated paint capability coverage
This commit is contained in:
68
tests/golden/WBV2-P16-000/manifest.json
Normal file
68
tests/golden/WBV2-P16-000/manifest.json
Normal file
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-000",
|
||||
"parentTask": "WBV2-P15-003",
|
||||
"operation": "AUTHORIZE_PAINT_CAPABILITY_CONTINUATION",
|
||||
"status": "done",
|
||||
"enablingTask": true,
|
||||
"parityStateChange": false,
|
||||
"runtime": "READ_ONLY_PAINT_CONTINUATION_ROOT",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P15-003/manifest.json",
|
||||
"sha256": "662777f7ef49ce687ffabdc248dea6c09104afb4a73db0672f4af2108170b56f"
|
||||
},
|
||||
"parentReport": {
|
||||
"path": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"sha256": "a0f2f9d278a96ffc1f4048375754042d6364f03162d898b9d679ea6587a6ae71"
|
||||
},
|
||||
"inventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8"
|
||||
},
|
||||
"sourceReport": {
|
||||
"path": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"sha256": "de29aabbb753b682d85c30258ff4d68530650d00e167f30181d5c9a68669dd99"
|
||||
},
|
||||
"sourceRunner": {
|
||||
"path": "tools/web/check-paint-roundtrip.mjs",
|
||||
"sha256": "17ec300b94020b06cf27916b208af3e524fc5c7127be25e734cf774a6b6bf450"
|
||||
},
|
||||
"sourceApi": {
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"sha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8"
|
||||
},
|
||||
"sourceTest": {
|
||||
"path": "web/tests/e2e/paint-pbvh-capability.spec.ts",
|
||||
"sha256": "03d13687f78995fe6ae4c683ece3783be77217daf8ec85df66e77451717a7729"
|
||||
},
|
||||
"plan": {
|
||||
"path": "tests/golden/WBV2-P16-000/paint-task-plan.json",
|
||||
"sha256": "d50204e266e89bd9effe62a46e45216a182f2034bfa1c17d8aee31a8931d1455"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P16-000/paint-root-report.json",
|
||||
"sha256": "8f22b54b4d7ebcc66b8957fa87bf55ba0038adc3d27c1ba713b4487a5d3a3b8c"
|
||||
},
|
||||
"rootCard": {
|
||||
"path": "docs/tasks/WBV2-P16-000.md",
|
||||
"sha256": "27ce212b756b75585623a2a7669af1ca2a161e5b58db383fa084c6b72e7b4e37"
|
||||
},
|
||||
"rootStatus": {
|
||||
"path": "docs/status/WBV2-P16-000.md",
|
||||
"sha256": "57d9dd6ed8b886f4eba08069de685ed5144b0544a8403fef68d8502cb9e0b533"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"p15EvidencePreserved": true,
|
||||
"sourceCommandsBound": true,
|
||||
"existingPaintReceiptBound": true,
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"duplicateValidationAvoided": true,
|
||||
"representativeSliceOnly": true,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"fullHistoricalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P16-001"
|
||||
}
|
||||
37
tests/golden/WBV2-P16-000/paint-root-report.json
Normal file
37
tests/golden/WBV2-P16-000/paint-root-report.json
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-000",
|
||||
"operation": "AUTHORIZE_PAINT_CAPABILITY_CONTINUATION",
|
||||
"status": "PASS",
|
||||
"parent": {
|
||||
"task": "WBV2-P15-003",
|
||||
"manifest": "tests/golden/WBV2-P15-003/manifest.json",
|
||||
"manifestSha256": "662777f7ef49ce687ffabdc248dea6c09104afb4a73db0672f4af2108170b56f",
|
||||
"report": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"reportSha256": "a0f2f9d278a96ffc1f4048375754042d6364f03162d898b9d679ea6587a6ae71",
|
||||
"previousDecision": "READY_WITH_LIGHTING_SLICE_PARITY"
|
||||
},
|
||||
"continuation": {
|
||||
"root": "WBV2-P16-000",
|
||||
"firstTask": "WBV2-P16-001",
|
||||
"plannedTasks": 4,
|
||||
"candidate": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"sourceReport": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"sourceRunner": "tools/web/check-paint-roundtrip.mjs",
|
||||
"sourceApi": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"chromiumBoundaryTest": "web/tests/e2e/paint-pbvh-capability.spec.ts",
|
||||
"browser": "chromium",
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"noRepeatedExecution": true
|
||||
},
|
||||
"policy": {
|
||||
"p15EvidencePreserved": true,
|
||||
"sourceHistoryReadOnly": true,
|
||||
"representativeSliceOnly": true,
|
||||
"duplicateValidationAvoided": true,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"fullHistoricalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P16-001"
|
||||
}
|
||||
146
tests/golden/WBV2-P16-000/paint-task-plan.json
Normal file
146
tests/golden/WBV2-P16-000/paint-task-plan.json
Normal file
@@ -0,0 +1,146 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_PAINT_EPOCH_1",
|
||||
"status": "ACTIVE_PAINT_QUEUE",
|
||||
"authority": "queue_reactivated_after_p15_lighting_gate",
|
||||
"sourcePlan": "docs/BLENDER_WEB_PARITY_TASK_PLAN_V2.json",
|
||||
"executionPointer": "docs/EXECUTION_QUEUE.md",
|
||||
"runtimePolicy": {
|
||||
"blenderSource": "blender-5.2.0",
|
||||
"browserEvidence": [
|
||||
"chromium"
|
||||
],
|
||||
"forbiddenBrowsers": [
|
||||
"firefox",
|
||||
"webkit"
|
||||
],
|
||||
"mainAuthority": "blender_main",
|
||||
"reusePolicy": "source_hash_and_behavior_hash_deduplication"
|
||||
},
|
||||
"parentHighValue": {
|
||||
"manifest": "tests/golden/WBV2-P15-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P16-000",
|
||||
"phase": "P16",
|
||||
"title": "authorize_paint_capability_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P15-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-000.md",
|
||||
"behavior": "Authorize a source-backed Sculpt/Paint continuation without reopening completed batches.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P15 evidence remains hash-bound",
|
||||
"paint source and fixtures exist",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-001",
|
||||
"phase": "P16",
|
||||
"title": "select_paint_capability_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-000"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-001.md",
|
||||
"behavior": "Select one deterministic vertex-color and weight-paint behavior batch from source and inventory evidence.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source commands are present",
|
||||
"existing paint evidence is reused",
|
||||
"candidate remains representative"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-002",
|
||||
"phase": "P16",
|
||||
"title": "paint_attributes_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "SCULPT",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-001"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p16-paint",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-002.md",
|
||||
"behavior": "Bind vertex colors and weights, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"paint production report",
|
||||
"paint receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"vertex colors and weights match",
|
||||
"undo/redo is sequential",
|
||||
"malformed input fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "planned",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-003",
|
||||
"phase": "P16",
|
||||
"title": "close_paint_capability_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P16-003.md",
|
||||
"behavior": "Close the paint capability gate without promoting representative evidence to full-family completion.",
|
||||
"outputs": [
|
||||
"paint gate",
|
||||
"limited declaration",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only tested paint behavior is claimed",
|
||||
"inventory remainder stays explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "planned",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
]
|
||||
}
|
||||
84
tests/golden/WBV2-P16-001/manifest.json
Normal file
84
tests/golden/WBV2-P16-001/manifest.json
Normal file
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-001",
|
||||
"parentTask": "WBV2-P16-000",
|
||||
"operation": "SELECT_PAINT_CAPABILITY_BATCH",
|
||||
"status": "done",
|
||||
"enablingTask": true,
|
||||
"parityStateChange": false,
|
||||
"runtime": "READ_ONLY_SOURCE_CANDIDATE_SELECTION",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P16-000/manifest.json",
|
||||
"sha256": "34864015661cd809e12314f1cb12d9b36d230c3c553426fcdff6a0e2d3fd34a9"
|
||||
},
|
||||
"inventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8"
|
||||
},
|
||||
"sourceReport": {
|
||||
"path": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"sha256": "de29aabbb753b682d85c30258ff4d68530650d00e167f30181d5c9a68669dd99"
|
||||
},
|
||||
"sourceRunner": {
|
||||
"path": "tools/web/check-paint-roundtrip.mjs",
|
||||
"sha256": "17ec300b94020b06cf27916b208af3e524fc5c7127be25e734cf774a6b6bf450"
|
||||
},
|
||||
"sourceApi": {
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"sha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8"
|
||||
},
|
||||
"sourceTest": {
|
||||
"path": "web/tests/e2e/paint-pbvh-capability.spec.ts",
|
||||
"sha256": "03d13687f78995fe6ae4c683ece3783be77217daf8ec85df66e77451717a7729"
|
||||
},
|
||||
"colorFixture": {
|
||||
"path": "tests/files/web/attribute_scene.blend",
|
||||
"sha256": "12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71"
|
||||
},
|
||||
"weightFixture": {
|
||||
"path": "tests/files/web/rigged_shape_scene.blend",
|
||||
"sha256": "ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7"
|
||||
},
|
||||
"candidate": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-candidate-set.json",
|
||||
"sha256": "fdfd6e4e6b43f93861f88f805df4891709bac954f17122ee404d2de784b56803"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-selection-report.json",
|
||||
"sha256": "2282a18e977860d4b9062170807f668804808473a16b867788ee36059c460342"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-paint-selection.mjs",
|
||||
"sha256": "03a36cc1c23a00a463d6f4531cfb6f83d7f8380ccf75b775c79c0e2bf4686297"
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P16-001.md",
|
||||
"sha256": "63a26dc220c170399edc4fc83d6b17a939429781ce04ad3520635b59ccecd0a1"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-task-plan.json",
|
||||
"sha256": "d431ce1a19da9743196de0910ceae4f43b5ddc98ebad06a27f81e287efdab4ba"
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P16-001/task-context.json",
|
||||
"sha256": "a592778145922797a89a23bdb6a03d0ea7d192a2aed6ac65202675bf0b748314"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"capability": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"matchedInventoryEntries": 117,
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"sourceApiBound": true,
|
||||
"existingEvidenceReused": true,
|
||||
"representativeSliceOnly": true,
|
||||
"fullFamilyParity": false,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true,
|
||||
"deterministic": true,
|
||||
"historicalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P16-002"
|
||||
}
|
||||
1121
tests/golden/WBV2-P16-001/paint-candidate-set.json
Normal file
1121
tests/golden/WBV2-P16-001/paint-candidate-set.json
Normal file
File diff suppressed because it is too large
Load Diff
68
tests/golden/WBV2-P16-001/paint-selection-report.json
Normal file
68
tests/golden/WBV2-P16-001/paint-selection-report.json
Normal file
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-001",
|
||||
"operation": "SELECT_PAINT_CAPABILITY_BATCH",
|
||||
"status": "PASS",
|
||||
"candidate": {
|
||||
"capabilityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"representativeBehavior": {
|
||||
"capability": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"operations": [
|
||||
"setVertexColors",
|
||||
"setVertexWeights"
|
||||
],
|
||||
"fixtures": [
|
||||
"tests/files/web/attribute_scene.blend",
|
||||
"tests/files/web/rigged_shape_scene.blend"
|
||||
],
|
||||
"positive": [
|
||||
"uniform-corner-colors",
|
||||
"normalized-weights",
|
||||
"undo",
|
||||
"redo",
|
||||
"save-reopen"
|
||||
],
|
||||
"negative": [
|
||||
"invalid-color-index",
|
||||
"unknown-weight-group"
|
||||
],
|
||||
"browser": "chromium",
|
||||
"engine": "compiled-WASM-WebEngine-Main"
|
||||
},
|
||||
"behaviorHash": "00f77644acba0d1d902de5a4222f2c7f8b8987e1d31605bf440330455cb1070e",
|
||||
"dedupeKey": "SCULPT.PAINT_ATTRIBUTES|00f77644acba0d1d902de5a4222f2c7f8b8987e1d31605bf440330455cb1070e|8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8|12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71|ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7",
|
||||
"sourceBacked": true,
|
||||
"chromiumProductionReady": true,
|
||||
"fullFamilyParity": false
|
||||
},
|
||||
"inventory": {
|
||||
"matchedEntries": 117,
|
||||
"pending": 117,
|
||||
"remainderExplicit": true
|
||||
},
|
||||
"source": {
|
||||
"inventory": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"inventorySha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"sourceReport": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"sourceReportSha256": "de29aabbb753b682d85c30258ff4d68530650d00e167f30181d5c9a68669dd99",
|
||||
"runner": "tools/web/check-paint-roundtrip.mjs",
|
||||
"runnerSha256": "17ec300b94020b06cf27916b208af3e524fc5c7127be25e734cf774a6b6bf450",
|
||||
"api": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"apiSha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8",
|
||||
"chromiumBoundaryTest": "web/tests/e2e/paint-pbvh-capability.spec.ts",
|
||||
"chromiumBoundaryTestSha256": "03d13687f78995fe6ae4c683ece3783be77217daf8ec85df66e77451717a7729",
|
||||
"colorFixture": "tests/files/web/attribute_scene.blend",
|
||||
"colorFixtureSha256": "12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71",
|
||||
"weightFixture": "tests/files/web/rigged_shape_scene.blend",
|
||||
"weightFixtureSha256": "ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7"
|
||||
},
|
||||
"matchedEntryDigest": "fbba41e16491b2a97707d9785a75d60f9fb80a1479466c921c6512cdf7a1c58e",
|
||||
"efficiency": {
|
||||
"oneCapabilityScan": true,
|
||||
"existingPaintEvidenceReused": true,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"nextTask": "WBV2-P16-002"
|
||||
}
|
||||
150
tests/golden/WBV2-P16-001/paint-task-plan.json
Normal file
150
tests/golden/WBV2-P16-001/paint-task-plan.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_PAINT_EPOCH_1",
|
||||
"status": "ACTIVE_PAINT_QUEUE",
|
||||
"authority": "queue_reactivated_after_p15_lighting_gate",
|
||||
"sourcePlan": "docs/BLENDER_WEB_PARITY_TASK_PLAN_V2.json",
|
||||
"executionPointer": "docs/EXECUTION_QUEUE.md",
|
||||
"runtimePolicy": {
|
||||
"blenderSource": "blender-5.2.0",
|
||||
"browserEvidence": [
|
||||
"chromium"
|
||||
],
|
||||
"forbiddenBrowsers": [
|
||||
"firefox",
|
||||
"webkit"
|
||||
],
|
||||
"mainAuthority": "blender_main",
|
||||
"reusePolicy": "source_hash_and_behavior_hash_deduplication"
|
||||
},
|
||||
"parentHighValue": {
|
||||
"manifest": "tests/golden/WBV2-P15-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P16-000",
|
||||
"phase": "P16",
|
||||
"title": "authorize_paint_capability_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P15-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-000.md",
|
||||
"behavior": "Authorize a source-backed Sculpt/Paint continuation without reopening completed batches.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P15 evidence remains hash-bound",
|
||||
"paint source and fixtures exist",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-001",
|
||||
"phase": "P16",
|
||||
"title": "select_paint_capability_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-000"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-001.md",
|
||||
"behavior": "Select one deterministic vertex-color and weight-paint behavior batch from source and inventory evidence.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source commands are present",
|
||||
"existing paint evidence is reused",
|
||||
"candidate remains representative"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-002",
|
||||
"phase": "P16",
|
||||
"title": "paint_attributes_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "SCULPT",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-001"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p16-paint",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-002.md",
|
||||
"behavior": "Bind vertex colors and weights, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"paint production report",
|
||||
"paint receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"vertex colors and weights match",
|
||||
"undo/redo is sequential",
|
||||
"malformed input fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-003",
|
||||
"phase": "P16",
|
||||
"title": "close_paint_capability_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P16-003.md",
|
||||
"behavior": "Close the paint capability gate without promoting representative evidence to full-family completion.",
|
||||
"outputs": [
|
||||
"paint gate",
|
||||
"limited declaration",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only tested paint behavior is claimed",
|
||||
"inventory remainder stays explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "planned",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
],
|
||||
"parentRecoveryPlan": {
|
||||
"path": "tests/golden/WBV2-P16-000/paint-task-plan.json",
|
||||
"sha256": "d50204e266e89bd9effe62a46e45216a182f2034bfa1c17d8aee31a8931d1455"
|
||||
}
|
||||
}
|
||||
175
tests/golden/WBV2-P16-001/task-context.json
Normal file
175
tests/golden/WBV2-P16-001/task-context.json
Normal file
@@ -0,0 +1,175 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-001",
|
||||
"parentTask": "WBV2-P16-000",
|
||||
"status": "in_progress",
|
||||
"goal": "Select one deterministic vertex-color and weight-paint behavior batch from source and inventory evidence.",
|
||||
"scope": {
|
||||
"gap": "capability:SCULPT.PAINT_ATTRIBUTES",
|
||||
"ownerFamily": "PARITY",
|
||||
"implementationClass": "LOCAL_BOUNDED"
|
||||
},
|
||||
"commands": [
|
||||
"node tools/web/check-task-context.mjs --task WBV2-P16-001 --write"
|
||||
],
|
||||
"inputPaths": [
|
||||
"tests/golden/WBV2-P4-003/sculpt-report.json"
|
||||
],
|
||||
"inputSelection": {
|
||||
"schemaVersion": 1,
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 2944,
|
||||
"contextRemainingTokens": 734
|
||||
},
|
||||
"source": {
|
||||
"bytes": 6960,
|
||||
"tokens": 1742
|
||||
},
|
||||
"selected": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"bytes": 1553,
|
||||
"tokens": 389
|
||||
}
|
||||
],
|
||||
"excluded": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"bytes": 5053386,
|
||||
"reason": "EVIDENCE_BYTE_BUDGET"
|
||||
},
|
||||
{
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"bytes": 126797,
|
||||
"reason": "EVIDENCE_BYTE_BUDGET"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-001/",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P16-001.md",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-001/manifest.json",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
}
|
||||
],
|
||||
"totals": {
|
||||
"files": 1,
|
||||
"bytes": 1553,
|
||||
"tokens": 389
|
||||
}
|
||||
},
|
||||
"exitCriteria": [
|
||||
"source commands are present",
|
||||
"existing paint evidence is reused",
|
||||
"candidate remains representative"
|
||||
],
|
||||
"nextTask": "WBV2-P16-002",
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P16-001.md",
|
||||
"taskIndex": "tests/golden/WBV2/task-index.json",
|
||||
"parentManifest": "tests/golden/WBV2-P16-000/manifest.json",
|
||||
"parentStatus": "docs/status/WBV2-P16-000.md"
|
||||
},
|
||||
"readPolicy": {
|
||||
"required": [
|
||||
"docs/EXECUTION_QUEUE.md",
|
||||
"docs/tasks/WBV2-P16-001.md",
|
||||
"tests/golden/WBV2-P16-000/manifest.json",
|
||||
"docs/status/WBV2-P16-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-P16-000",
|
||||
"parentTask": "WBV2-P15-003",
|
||||
"status": "done",
|
||||
"nextTask": "WBV2-P16-001",
|
||||
"artifactCount": 11
|
||||
},
|
||||
"statusSummary": [
|
||||
"# WBV2-P16-000 status",
|
||||
"- task: `WBV2-P16-000`; parent: `WBV2-P15-003`; status: `done`",
|
||||
"- candidate: `SCULPT.PAINT_ATTRIBUTES`; source commands and existing receipts are present",
|
||||
"- inventory carried forward: `6900` total, `6618` pending",
|
||||
"- duplicate validation: `forbidden`; representative slice only",
|
||||
"- nextTask: `WBV2-P16-001`",
|
||||
"P16 is an authorized continuation that reuses P14 coverage and validates one unique vertex-color/weight behavior batch in Chromium."
|
||||
]
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1182,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 36,
|
||||
"taskTokens": 296
|
||||
},
|
||||
"size": {
|
||||
"documents": [
|
||||
{
|
||||
"path": "docs/EXECUTION_QUEUE.md",
|
||||
"bytes": 2803,
|
||||
"lines": 51,
|
||||
"tokens": 701
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P16-001.md",
|
||||
"bytes": 1182,
|
||||
"lines": 36,
|
||||
"tokens": 296
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-000/manifest.json",
|
||||
"bytes": 2518,
|
||||
"lines": 69,
|
||||
"tokens": 630
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P16-000.md",
|
||||
"bytes": 457,
|
||||
"lines": 10,
|
||||
"tokens": 115
|
||||
}
|
||||
],
|
||||
"sourceTokens": 1742,
|
||||
"evidenceFiles": 1,
|
||||
"evidenceBytes": 1553,
|
||||
"evidenceTokens": 389,
|
||||
"totalTokens": 2131,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 3155,
|
||||
"serializedContextTokens": 649,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
92
tests/golden/WBV2-P16-002/manifest.json
Normal file
92
tests/golden/WBV2-P16-002/manifest.json
Normal file
@@ -0,0 +1,92 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-002",
|
||||
"parentTask": "WBV2-P16-001",
|
||||
"operation": "PAINT_ATTRIBUTES_ENGINE_RECEIPT",
|
||||
"status": "done",
|
||||
"enablingTask": false,
|
||||
"parityStateChange": true,
|
||||
"runtime": "PLAYWRIGHT_CHROMIUM_WEBENGINE_WASM",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P16-001/manifest.json",
|
||||
"sha256": "13b140423c2039d956b320820e9ac1a6dc7be0e4df4fc900211c4f3a8fdfa9d6"
|
||||
},
|
||||
"selection": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-selection-report.json",
|
||||
"sha256": "2282a18e977860d4b9062170807f668804808473a16b867788ee36059c460342"
|
||||
},
|
||||
"sourceReport": {
|
||||
"path": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"sha256": "de29aabbb753b682d85c30258ff4d68530650d00e167f30181d5c9a68669dd99"
|
||||
},
|
||||
"runner": {
|
||||
"path": "tools/web/check-paint-roundtrip.mjs",
|
||||
"sha256": "17ec300b94020b06cf27916b208af3e524fc5c7127be25e734cf774a6b6bf450"
|
||||
},
|
||||
"api": {
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"sha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8"
|
||||
},
|
||||
"productionTest": {
|
||||
"path": "web/tests/e2e/wbv2-paint-attributes-production.spec.ts",
|
||||
"sha256": "47ed3b8bccc9c94f6de7dc42a3bb558bb0572ea8f4efac2e0339338306b85f04"
|
||||
},
|
||||
"colorFixture": {
|
||||
"path": "tests/files/web/attribute_scene.blend",
|
||||
"sha256": "12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71"
|
||||
},
|
||||
"weightFixture": {
|
||||
"path": "tests/files/web/rigged_shape_scene.blend",
|
||||
"sha256": "ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7"
|
||||
},
|
||||
"production": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-attributes-production.json",
|
||||
"sha256": "cd38def8bfdb896c9c4e769c9032ffb25fb1ad1ad32e3730cd298631ed8c2e46"
|
||||
},
|
||||
"productionSecond": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-attributes-production.second.json",
|
||||
"sha256": "cd38def8bfdb896c9c4e769c9032ffb25fb1ad1ad32e3730cd298631ed8c2e46"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-paint-receipt.mjs",
|
||||
"sha256": "d6efc9b7430889389d12b120f260a438cbdeef84907f01f726e99ecae37f0b57"
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P16-002.md",
|
||||
"sha256": "67ae448a553cfd0b5905f197e63ca34c420065f5b6b3f18e151a09c044da823d"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-task-plan.json",
|
||||
"sha256": "cd8a8ebf67efdd82af8e54757d2f123f918bce3bb8c50034f0240eefe0987b40"
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P16-002/task-context.json",
|
||||
"sha256": "a1ec681fc3c7610e3775875d9c9ae1ce5caeb82e744bcb5a6ee1ae2f96d7ca22"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"operations": 2,
|
||||
"exactInventoryBindings": 2,
|
||||
"boundInventoryIds": [
|
||||
"operator:paint.vertex_color_set",
|
||||
"operator:paint.weight_set"
|
||||
],
|
||||
"colorAttributeBound": true,
|
||||
"weightAttributeBound": true,
|
||||
"undoRedoSequential": true,
|
||||
"malformedRejected": true,
|
||||
"saveReopen": "EXACT",
|
||||
"deterministic": true,
|
||||
"representativeSliceOnly": true,
|
||||
"fullFamilyParity": false,
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"historicalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P16-003"
|
||||
}
|
||||
57
tests/golden/WBV2-P16-002/paint-attributes-production.json
Normal file
57
tests/golden/WBV2-P16-002/paint-attributes-production.json
Normal file
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-002",
|
||||
"operation": "PAINT_ATTRIBUTES_ENGINE_CHROMIUM",
|
||||
"queueMutation": false,
|
||||
"sourceFixtures": {
|
||||
"colorSha256": "12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71",
|
||||
"weightSha256": "ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7"
|
||||
},
|
||||
"browser": "chromium",
|
||||
"color": {
|
||||
"baseRevision": 1,
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"cornerCount": 7,
|
||||
"firstColor": [
|
||||
0.125,
|
||||
0.375,
|
||||
0.625,
|
||||
0.875
|
||||
],
|
||||
"malformed": {
|
||||
"code": "PAINT_SCHEMA_INVALID",
|
||||
"message": "Vertex color patch values are outside the bounded domain"
|
||||
},
|
||||
"malformedRevisionPreserved": true,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"reopenedRevision": 1,
|
||||
"reopenedColors": [
|
||||
0.125,
|
||||
0.375,
|
||||
0.625,
|
||||
0.875
|
||||
]
|
||||
},
|
||||
"weight": {
|
||||
"baseRevision": 1,
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"groupIndex": 2,
|
||||
"vertex0": 0.75,
|
||||
"vertex1": 0.25,
|
||||
"vertex2": 0.2857142984867096,
|
||||
"normalizedSum": 1.0000000447034836,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"saveReopen": true
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-002",
|
||||
"operation": "PAINT_ATTRIBUTES_ENGINE_CHROMIUM",
|
||||
"queueMutation": false,
|
||||
"sourceFixtures": {
|
||||
"colorSha256": "12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71",
|
||||
"weightSha256": "ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7"
|
||||
},
|
||||
"browser": "chromium",
|
||||
"color": {
|
||||
"baseRevision": 1,
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"cornerCount": 7,
|
||||
"firstColor": [
|
||||
0.125,
|
||||
0.375,
|
||||
0.625,
|
||||
0.875
|
||||
],
|
||||
"malformed": {
|
||||
"code": "PAINT_SCHEMA_INVALID",
|
||||
"message": "Vertex color patch values are outside the bounded domain"
|
||||
},
|
||||
"malformedRevisionPreserved": true,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"reopenedRevision": 1,
|
||||
"reopenedColors": [
|
||||
0.125,
|
||||
0.375,
|
||||
0.625,
|
||||
0.875
|
||||
]
|
||||
},
|
||||
"weight": {
|
||||
"baseRevision": 1,
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"groupIndex": 2,
|
||||
"vertex0": 0.75,
|
||||
"vertex1": 0.25,
|
||||
"vertex2": 0.2857142984867096,
|
||||
"normalizedSum": 1.0000000447034836,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"saveReopen": true
|
||||
}
|
||||
}
|
||||
131
tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json
Normal file
131
tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json
Normal file
@@ -0,0 +1,131 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-002",
|
||||
"operation": "PAINT_ATTRIBUTES_ENGINE_RECEIPT",
|
||||
"status": "PASS",
|
||||
"browser": "chromium",
|
||||
"queueMutation": false,
|
||||
"source": {
|
||||
"task": "WBV2-P16-001",
|
||||
"manifest": "tests/golden/WBV2-P16-001/manifest.json",
|
||||
"manifestSha256": "13b140423c2039d956b320820e9ac1a6dc7be0e4df4fc900211c4f3a8fdfa9d6",
|
||||
"selection": "tests/golden/WBV2-P16-001/paint-selection-report.json",
|
||||
"selectionSha256": "2282a18e977860d4b9062170807f668804808473a16b867788ee36059c460342",
|
||||
"sourceReport": "tests/golden/WBV2-P4-003/sculpt-report.json",
|
||||
"sourceReportSha256": "de29aabbb753b682d85c30258ff4d68530650d00e167f30181d5c9a68669dd99",
|
||||
"runner": "tools/web/check-paint-roundtrip.mjs",
|
||||
"runnerSha256": "17ec300b94020b06cf27916b208af3e524fc5c7127be25e734cf774a6b6bf450",
|
||||
"api": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"apiSha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8",
|
||||
"productionTest": "web/tests/e2e/wbv2-paint-attributes-production.spec.ts",
|
||||
"productionTestSha256": "47ed3b8bccc9c94f6de7dc42a3bb558bb0572ea8f4efac2e0339338306b85f04",
|
||||
"colorFixture": "tests/files/web/attribute_scene.blend",
|
||||
"colorFixtureSha256": "12fa75bb79f8c38e660d3d2a8fc9cc16dd3df4fc9208b0e2ad94fb1f8aa68f71",
|
||||
"weightFixture": "tests/files/web/rigged_shape_scene.blend",
|
||||
"weightFixtureSha256": "ff81b6c6ceb3df5e8cad81674c3f208f016b19438d54c8bfc1f8b51d55d1a8e7"
|
||||
},
|
||||
"production": {
|
||||
"report": "tests/golden/WBV2-P16-002/paint-attributes-production.json",
|
||||
"reportSha256": "cd38def8bfdb896c9c4e769c9032ffb25fb1ad1ad32e3730cd298631ed8c2e46",
|
||||
"secondReport": "tests/golden/WBV2-P16-002/paint-attributes-production.second.json",
|
||||
"secondReportSha256": "cd38def8bfdb896c9c4e769c9032ffb25fb1ad1ad32e3730cd298631ed8c2e46",
|
||||
"deterministic": true,
|
||||
"operations": [
|
||||
"setVertexColors",
|
||||
"setVertexWeights"
|
||||
],
|
||||
"colorRevisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"weightRevisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"color": {
|
||||
"baseRevision": 1,
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"cornerCount": 7,
|
||||
"firstColor": [
|
||||
0.125,
|
||||
0.375,
|
||||
0.625,
|
||||
0.875
|
||||
],
|
||||
"malformed": {
|
||||
"code": "PAINT_SCHEMA_INVALID",
|
||||
"message": "Vertex color patch values are outside the bounded domain"
|
||||
},
|
||||
"malformedRevisionPreserved": true,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"reopenedRevision": 1,
|
||||
"reopenedColors": [
|
||||
0.125,
|
||||
0.375,
|
||||
0.625,
|
||||
0.875
|
||||
]
|
||||
},
|
||||
"weight": {
|
||||
"baseRevision": 1,
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"groupIndex": 2,
|
||||
"vertex0": 0.75,
|
||||
"vertex1": 0.25,
|
||||
"vertex2": 0.2857142984867096,
|
||||
"normalizedSum": 1.0000000447034836,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"saveReopen": true
|
||||
},
|
||||
"malformed": {
|
||||
"code": "PAINT_SCHEMA_INVALID",
|
||||
"message": "Vertex color patch values are outside the bounded domain"
|
||||
},
|
||||
"malformedMainMutation": false,
|
||||
"saveReopen": "EXACT"
|
||||
},
|
||||
"inventoryBindings": [
|
||||
{
|
||||
"id": "operator:paint.vertex_color_set",
|
||||
"evidence": "setVertexColors",
|
||||
"exact": true,
|
||||
"reason": "bounded protocol command directly writes corner color attribute"
|
||||
},
|
||||
{
|
||||
"id": "operator:paint.weight_set",
|
||||
"evidence": "setVertexWeights",
|
||||
"exact": true,
|
||||
"reason": "bounded protocol command directly writes vertex group weights"
|
||||
}
|
||||
],
|
||||
"assertions": {
|
||||
"colorAttributeBound": true,
|
||||
"weightAttributeBound": true,
|
||||
"inventoryBindingsExact": true,
|
||||
"undoRedoSequential": true,
|
||||
"malformedRejected": true,
|
||||
"mainUnchangedOnMalformed": true,
|
||||
"saveReopenExact": true,
|
||||
"deterministic": true,
|
||||
"representativeSliceOnly": true,
|
||||
"fullFamilyParity": false,
|
||||
"historicalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P16-003"
|
||||
}
|
||||
150
tests/golden/WBV2-P16-002/paint-task-plan.json
Normal file
150
tests/golden/WBV2-P16-002/paint-task-plan.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_PAINT_EPOCH_1",
|
||||
"status": "ACTIVE_PAINT_QUEUE",
|
||||
"authority": "queue_reactivated_after_p15_lighting_gate",
|
||||
"sourcePlan": "docs/BLENDER_WEB_PARITY_TASK_PLAN_V2.json",
|
||||
"executionPointer": "docs/EXECUTION_QUEUE.md",
|
||||
"runtimePolicy": {
|
||||
"blenderSource": "blender-5.2.0",
|
||||
"browserEvidence": [
|
||||
"chromium"
|
||||
],
|
||||
"forbiddenBrowsers": [
|
||||
"firefox",
|
||||
"webkit"
|
||||
],
|
||||
"mainAuthority": "blender_main",
|
||||
"reusePolicy": "source_hash_and_behavior_hash_deduplication"
|
||||
},
|
||||
"parentHighValue": {
|
||||
"manifest": "tests/golden/WBV2-P15-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P16-000",
|
||||
"phase": "P16",
|
||||
"title": "authorize_paint_capability_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P15-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-000.md",
|
||||
"behavior": "Authorize a source-backed Sculpt/Paint continuation without reopening completed batches.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P15 evidence remains hash-bound",
|
||||
"paint source and fixtures exist",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-001",
|
||||
"phase": "P16",
|
||||
"title": "select_paint_capability_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-000"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-001.md",
|
||||
"behavior": "Select one deterministic vertex-color and weight-paint behavior batch from source and inventory evidence.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source commands are present",
|
||||
"existing paint evidence is reused",
|
||||
"candidate remains representative"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-002",
|
||||
"phase": "P16",
|
||||
"title": "paint_attributes_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "SCULPT",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-001"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p16-paint",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-002.md",
|
||||
"behavior": "Bind vertex colors and weights, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"paint production report",
|
||||
"paint receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"vertex colors and weights match",
|
||||
"undo/redo is sequential",
|
||||
"malformed input fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-003",
|
||||
"phase": "P16",
|
||||
"title": "close_paint_capability_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P16-003.md",
|
||||
"behavior": "Close the paint capability gate without promoting representative evidence to full-family completion.",
|
||||
"outputs": [
|
||||
"paint gate",
|
||||
"limited declaration",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only tested paint behavior is claimed",
|
||||
"inventory remainder stays explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
],
|
||||
"parentRecoveryPlan": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-task-plan.json",
|
||||
"sha256": "d431ce1a19da9743196de0910ceae4f43b5ddc98ebad06a27f81e287efdab4ba"
|
||||
}
|
||||
}
|
||||
169
tests/golden/WBV2-P16-002/task-context.json
Normal file
169
tests/golden/WBV2-P16-002/task-context.json
Normal file
@@ -0,0 +1,169 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-002",
|
||||
"parentTask": "WBV2-P16-001",
|
||||
"status": "in_progress",
|
||||
"goal": "Bind vertex colors and weights, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"scope": {
|
||||
"gap": "capability:SCULPT.PAINT_ATTRIBUTES",
|
||||
"ownerFamily": "SCULPT",
|
||||
"implementationClass": "LOCAL_EXACT"
|
||||
},
|
||||
"commands": [
|
||||
"node tools/web/check-task-context.mjs --task WBV2-P16-002 --write"
|
||||
],
|
||||
"inputPaths": [],
|
||||
"inputSelection": {
|
||||
"schemaVersion": 1,
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 2079,
|
||||
"contextRemainingTokens": 518
|
||||
},
|
||||
"source": {
|
||||
"bytes": 7825,
|
||||
"tokens": 1958
|
||||
},
|
||||
"selected": [],
|
||||
"excluded": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-001/paint-selection-report.json",
|
||||
"bytes": 2824,
|
||||
"reason": "CONTEXT_REMAINING_SPACE"
|
||||
},
|
||||
{
|
||||
"path": "web/tests/e2e/wbv2-paint-attributes-production.spec.ts",
|
||||
"bytes": 7134,
|
||||
"reason": "CONTEXT_REMAINING_SPACE"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-002/",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P16-002.md",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-002/manifest.json",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
}
|
||||
],
|
||||
"totals": {
|
||||
"files": 0,
|
||||
"bytes": 0,
|
||||
"tokens": 0
|
||||
}
|
||||
},
|
||||
"exitCriteria": [
|
||||
"vertex colors and weights match",
|
||||
"undo/redo is sequential",
|
||||
"malformed input fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"nextTask": "WBV2-P16-003",
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P16-002.md",
|
||||
"taskIndex": "tests/golden/WBV2/task-index.json",
|
||||
"parentManifest": "tests/golden/WBV2-P16-001/manifest.json",
|
||||
"parentStatus": "docs/status/WBV2-P16-001.md"
|
||||
},
|
||||
"readPolicy": {
|
||||
"required": [
|
||||
"docs/EXECUTION_QUEUE.md",
|
||||
"docs/tasks/WBV2-P16-002.md",
|
||||
"tests/golden/WBV2-P16-001/manifest.json",
|
||||
"docs/status/WBV2-P16-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-P16-001",
|
||||
"parentTask": "WBV2-P16-000",
|
||||
"status": "done",
|
||||
"nextTask": "WBV2-P16-002",
|
||||
"artifactCount": 14
|
||||
},
|
||||
"statusSummary": [
|
||||
"# WBV2-P16-001 status",
|
||||
"- task: `WBV2-P16-001`; parent: `WBV2-P16-000`; status: `done`",
|
||||
"- selected capability: `SCULPT.PAINT_ATTRIBUTES`; operations: vertex colors and vertex weights",
|
||||
"- matched inventory entries: `117`; inventory remains `6900` total, `6618` pending",
|
||||
"- behavior hash: `00f77644acba0d1d902de5a4222f2c7f8b8987e1d31605bf440330455cb1070e`; dedupe key binds API and fixture hashes",
|
||||
"- existing paint evidence reused: `true`; repeated Blender/Chromium runs: `0`",
|
||||
"- representative slice: `true`; full-family parity: `false`",
|
||||
"- nextTask: `WBV2-P16-002`"
|
||||
]
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1147,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 36,
|
||||
"taskTokens": 287
|
||||
},
|
||||
"size": {
|
||||
"documents": [
|
||||
{
|
||||
"path": "docs/EXECUTION_QUEUE.md",
|
||||
"bytes": 2803,
|
||||
"lines": 51,
|
||||
"tokens": 701
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P16-002.md",
|
||||
"bytes": 1147,
|
||||
"lines": 36,
|
||||
"tokens": 287
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-001/manifest.json",
|
||||
"bytes": 3158,
|
||||
"lines": 85,
|
||||
"tokens": 790
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P16-001.md",
|
||||
"bytes": 717,
|
||||
"lines": 12,
|
||||
"tokens": 180
|
||||
}
|
||||
],
|
||||
"sourceTokens": 1958,
|
||||
"evidenceFiles": 0,
|
||||
"evidenceBytes": 0,
|
||||
"evidenceTokens": 0,
|
||||
"totalTokens": 1958,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 2982,
|
||||
"serializedContextTokens": 609,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
49
tests/golden/WBV2-P16-003/inventory-completion-overlay.json
Normal file
49
tests/golden/WBV2-P16-003/inventory-completion-overlay.json
Normal file
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-003",
|
||||
"operation": "INVENTORY_COMPLETION_OVERLAY",
|
||||
"status": "PASS",
|
||||
"baseInventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"total": 6900,
|
||||
"pending": 6618
|
||||
},
|
||||
"completionEvidence": {
|
||||
"receipt": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"receiptSha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a",
|
||||
"deterministic": true,
|
||||
"chromium": true,
|
||||
"wasmMain": true,
|
||||
"saveReopen": "EXACT"
|
||||
},
|
||||
"entries": [
|
||||
{
|
||||
"id": "operator:paint.vertex_color_set",
|
||||
"capabilityId": "CAP-SCULPT-PAINT",
|
||||
"sourceReceipt": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sourceReceiptSha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a",
|
||||
"evidence": "setVertexColors",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
},
|
||||
{
|
||||
"id": "operator:paint.weight_set",
|
||||
"capabilityId": "CAP-SCULPT-PAINT",
|
||||
"sourceReceipt": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sourceReceiptSha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a",
|
||||
"evidence": "setVertexWeights",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
}
|
||||
],
|
||||
"summary": {
|
||||
"newlyVerifiedEntries": 2,
|
||||
"effectiveCompleted": 283,
|
||||
"effectivePending": 6616,
|
||||
"claimedComplete": 2,
|
||||
"basePendingPreserved": true,
|
||||
"fullFamilyParity": false,
|
||||
"historicalReproduction": false
|
||||
}
|
||||
}
|
||||
85
tests/golden/WBV2-P16-003/manifest.json
Normal file
85
tests/golden/WBV2-P16-003/manifest.json
Normal file
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-003",
|
||||
"parentTask": "WBV2-P16-002",
|
||||
"operation": "CLOSE_PAINT_CAPABILITY_GATE",
|
||||
"status": "done",
|
||||
"enablingTask": true,
|
||||
"parityStateChange": true,
|
||||
"runtime": "READ_ONLY_PAINT_GATE_WITH_COMPLETION_OVERLAY",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P16-002/manifest.json",
|
||||
"sha256": "02cf5b164e8b84eb92643d8b6db7f718575012b1518763bbbf6fc849e04421cb"
|
||||
},
|
||||
"receipt": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a"
|
||||
},
|
||||
"selection": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-selection-report.json",
|
||||
"sha256": "2282a18e977860d4b9062170807f668804808473a16b867788ee36059c460342"
|
||||
},
|
||||
"baseInventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8"
|
||||
},
|
||||
"coverageMatrix": {
|
||||
"path": "tests/golden/WBV2-P14-002/capability-evidence-matrix.json",
|
||||
"sha256": "06a987b3911999c4c4983c89841318cd053ae30465ae83d49e6eeff566b462b8"
|
||||
},
|
||||
"p15Gate": {
|
||||
"path": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"sha256": "a0f2f9d278a96ffc1f4048375754042d6364f03162d898b9d679ea6587a6ae71"
|
||||
},
|
||||
"approval": {
|
||||
"path": "docs/status/M12-PROVENANCE-EPOCH-2-APPROVAL.json",
|
||||
"sha256": "cffc869734af94ffe6b8b8004d7ab8cc2c9edcb85ec2a877548e0b0f923f5ea3"
|
||||
},
|
||||
"overlay": {
|
||||
"path": "tests/golden/WBV2-P16-003/inventory-completion-overlay.json",
|
||||
"sha256": "b96f91fe9e09a01382a5caf94dc67dd5a2c738d6c00610c753eeeff2afae816a"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P16-003/paint-gate-report.json",
|
||||
"sha256": "51ee4f6bf88f5d744692eda3367250b4e5ac46f6bf5b9afb4725777cc5db36bd"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-paint-gate.mjs",
|
||||
"sha256": "d71ee219a584f48a18d1cc5102cc0eaefcd409663804c4e4560a1e02167f7e0c"
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P16-003.md",
|
||||
"sha256": "c3f8d70c0ca2fd36996cf7836254a9d69a8be8e6f453fda0445931f4589c38a9"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P16-003/paint-task-plan.json",
|
||||
"sha256": "830162784de4c873db7408f838110d528185606cff2877187ccf365c93882389"
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P16-003/task-context.json",
|
||||
"sha256": "0177aefb69cc22fc0ff0cc1b2b5802009c6c3dd89cf36eb9e4173531cd94de83"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"totalFeatureClaims": 10,
|
||||
"newPaintFeatureClaims": 1,
|
||||
"exactInventoryBindings": 2,
|
||||
"effectiveCompleted": 283,
|
||||
"effectivePending": 6616,
|
||||
"baseInventoryCompleted": 281,
|
||||
"baseInventoryPending": 6618,
|
||||
"claimedCompleteOverlay": 2,
|
||||
"remainingPaintPending": 115,
|
||||
"uniqueBehaviorRuns": 2,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true,
|
||||
"baseInventoryUntouched": true,
|
||||
"provenanceEpoch": 2,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"fullHistoricalReproduction": false,
|
||||
"deterministic": true
|
||||
},
|
||||
"nextTask": null
|
||||
}
|
||||
138
tests/golden/WBV2-P16-003/paint-gate-report.json
Normal file
138
tests/golden/WBV2-P16-003/paint-gate-report.json
Normal file
@@ -0,0 +1,138 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-003",
|
||||
"operation": "CLOSE_PAINT_CAPABILITY_GATE",
|
||||
"status": "PASS",
|
||||
"decision": {
|
||||
"status": "READY_WITH_PAINT_SLICE_AND_INVENTORY_OVERLAY",
|
||||
"code": "PAINT_ATTRIBUTES_AUTHORIZED_REBASELINE",
|
||||
"featureParityClaims": [
|
||||
"CAP-MESH-TOPOLOGY-FAMILY",
|
||||
"CAP-MODIFIER-PARAMETER-APPLY",
|
||||
"CAP-ASSET-LINK-OVERRIDE-RELOAD",
|
||||
"CAP-SCENE-OBJECT-ENGINE",
|
||||
"CAP-MATERIAL-ANIMATION-ENGINE",
|
||||
"CAP-VIEWPORT-NONMESH-ENGINE",
|
||||
"NODES.GEOMETRY_ENGINE",
|
||||
"RIG.POSE_ENGINE",
|
||||
"RENDER.LIGHTING_FIELDS",
|
||||
"SCULPT.PAINT_ATTRIBUTES"
|
||||
],
|
||||
"featureParityClaimCount": 10,
|
||||
"newFeatureClaim": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"newlyVerifiedInventoryEntries": 2,
|
||||
"baseInventoryPending": 6618,
|
||||
"effectivePending": 6616,
|
||||
"effectiveCompleted": 283,
|
||||
"claimedCompleteOverlay": 2,
|
||||
"fullFamilyParity": false,
|
||||
"engineBound": true,
|
||||
"browser": "chromium",
|
||||
"provenanceEpoch": 2,
|
||||
"releaseScope": "AUTHORIZED_REBASELINE_ONLY",
|
||||
"fullHistoricalReproduction": false
|
||||
},
|
||||
"evidence": {
|
||||
"receipt": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a",
|
||||
"bindings": [
|
||||
{
|
||||
"id": "operator:paint.vertex_color_set",
|
||||
"evidence": "setVertexColors",
|
||||
"exact": true,
|
||||
"reason": "bounded protocol command directly writes corner color attribute"
|
||||
},
|
||||
{
|
||||
"id": "operator:paint.weight_set",
|
||||
"evidence": "setVertexWeights",
|
||||
"exact": true,
|
||||
"reason": "bounded protocol command directly writes vertex group weights"
|
||||
}
|
||||
]
|
||||
},
|
||||
"overlay": {
|
||||
"path": "tests/golden/WBV2-P16-003/inventory-completion-overlay.json",
|
||||
"sha256": "b96f91fe9e09a01382a5caf94dc67dd5a2c738d6c00610c753eeeff2afae816a",
|
||||
"entries": [
|
||||
{
|
||||
"id": "operator:paint.vertex_color_set",
|
||||
"capabilityId": "CAP-SCULPT-PAINT",
|
||||
"sourceReceipt": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sourceReceiptSha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a",
|
||||
"evidence": "setVertexColors",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
},
|
||||
{
|
||||
"id": "operator:paint.weight_set",
|
||||
"capabilityId": "CAP-SCULPT-PAINT",
|
||||
"sourceReceipt": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"sourceReceiptSha256": "055531f8496d9f740c3d8b47456c7f426daece27e3a8272fb1c8e650c8c80c3a",
|
||||
"evidence": "setVertexWeights",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"selection": {
|
||||
"path": "tests/golden/WBV2-P16-001/paint-selection-report.json",
|
||||
"sha256": "2282a18e977860d4b9062170807f668804808473a16b867788ee36059c460342",
|
||||
"matchedEntries": 117
|
||||
},
|
||||
"baseInventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"pending": 6618
|
||||
},
|
||||
"coverageMatrix": {
|
||||
"path": "tests/golden/WBV2-P14-002/capability-evidence-matrix.json",
|
||||
"sha256": "06a987b3911999c4c4983c89841318cd053ae30465ae83d49e6eeff566b462b8"
|
||||
},
|
||||
"p15Gate": {
|
||||
"path": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"sha256": "a0f2f9d278a96ffc1f4048375754042d6364f03162d898b9d679ea6587a6ae71"
|
||||
},
|
||||
"approval": {
|
||||
"path": "docs/status/M12-PROVENANCE-EPOCH-2-APPROVAL.json",
|
||||
"sha256": "cffc869734af94ffe6b8b8004d7ab8cc2c9edcb85ec2a877548e0b0f923f5ea3",
|
||||
"epoch": 2
|
||||
}
|
||||
},
|
||||
"efficiency": {
|
||||
"uniqueBehaviorRuns": 2,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true,
|
||||
"entriesVerifiedPerBehaviorBatch": 2,
|
||||
"baseInventoryUntouched": true
|
||||
},
|
||||
"coverage": {
|
||||
"baseTotal": 6900,
|
||||
"baseCompleted": 281,
|
||||
"basePending": 6618,
|
||||
"overlayCompleted": 2,
|
||||
"effectiveCompleted": 283,
|
||||
"effectivePending": 6616,
|
||||
"remainingPaintPending": 115
|
||||
},
|
||||
"negative": {
|
||||
"missingReceipt": "REJECTED",
|
||||
"receiptHashDrift": "REJECTED",
|
||||
"nonChromium": "REJECTED",
|
||||
"nonExactSaveReopen": "REJECTED",
|
||||
"malformedPaint": "PAINT_SCHEMA_INVALID",
|
||||
"representativeAsFullFamily": "REJECTED",
|
||||
"historicalRestorationClaim": "REJECTED"
|
||||
},
|
||||
"policy": {
|
||||
"sourceHistoryReadOnly": true,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"overlayOnlyCompletion": true,
|
||||
"baseInventoryPreserved": true,
|
||||
"inventoryRemainderExplicit": true,
|
||||
"noFalseLocalParity": true,
|
||||
"terminalQueuePointer": true
|
||||
},
|
||||
"nextTask": null
|
||||
}
|
||||
150
tests/golden/WBV2-P16-003/paint-task-plan.json
Normal file
150
tests/golden/WBV2-P16-003/paint-task-plan.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_PAINT_EPOCH_1",
|
||||
"status": "COMPLETED_WITH_PAINT_SLICE_AND_OVERLAY",
|
||||
"authority": "queue_reactivated_after_p15_lighting_gate",
|
||||
"sourcePlan": "docs/BLENDER_WEB_PARITY_TASK_PLAN_V2.json",
|
||||
"executionPointer": "docs/EXECUTION_QUEUE.md",
|
||||
"runtimePolicy": {
|
||||
"blenderSource": "blender-5.2.0",
|
||||
"browserEvidence": [
|
||||
"chromium"
|
||||
],
|
||||
"forbiddenBrowsers": [
|
||||
"firefox",
|
||||
"webkit"
|
||||
],
|
||||
"mainAuthority": "blender_main",
|
||||
"reusePolicy": "source_hash_and_behavior_hash_deduplication"
|
||||
},
|
||||
"parentHighValue": {
|
||||
"manifest": "tests/golden/WBV2-P15-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P15-003/lighting-gate-report.json",
|
||||
"inventoryTotal": 6900,
|
||||
"inventoryPending": 6618,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P16-000",
|
||||
"phase": "P16",
|
||||
"title": "authorize_paint_capability_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P15-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-000.md",
|
||||
"behavior": "Authorize a source-backed Sculpt/Paint continuation without reopening completed batches.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P15 evidence remains hash-bound",
|
||||
"paint source and fixtures exist",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-001",
|
||||
"phase": "P16",
|
||||
"title": "select_paint_capability_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-000"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-001.md",
|
||||
"behavior": "Select one deterministic vertex-color and weight-paint behavior batch from source and inventory evidence.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source commands are present",
|
||||
"existing paint evidence is reused",
|
||||
"candidate remains representative"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-002",
|
||||
"phase": "P16",
|
||||
"title": "paint_attributes_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "SCULPT",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-001"
|
||||
],
|
||||
"parityId": "SCULPT.PAINT_ATTRIBUTES",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p16-paint",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P16-002.md",
|
||||
"behavior": "Bind vertex colors and weights, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"paint production report",
|
||||
"paint receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"vertex colors and weights match",
|
||||
"undo/redo is sequential",
|
||||
"malformed input fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P16-003",
|
||||
"phase": "P16",
|
||||
"title": "close_paint_capability_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P16-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p16-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P16-003.md",
|
||||
"behavior": "Close the paint capability gate without promoting representative evidence to full-family completion.",
|
||||
"outputs": [
|
||||
"paint gate",
|
||||
"limited declaration",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only tested paint behavior is claimed",
|
||||
"inventory remainder stays explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
],
|
||||
"parentRecoveryPlan": {
|
||||
"path": "tests/golden/WBV2-P16-002/paint-task-plan.json",
|
||||
"sha256": "cd8a8ebf67efdd82af8e54757d2f123f918bce3bb8c50034f0240eefe0987b40"
|
||||
}
|
||||
}
|
||||
168
tests/golden/WBV2-P16-003/task-context.json
Normal file
168
tests/golden/WBV2-P16-003/task-context.json
Normal file
@@ -0,0 +1,168 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P16-003",
|
||||
"parentTask": "WBV2-P16-002",
|
||||
"status": "in_progress",
|
||||
"goal": "Close the paint capability gate without promoting representative evidence to full-family completion.",
|
||||
"scope": {
|
||||
"gap": "workflow:close_paint_capability_gate",
|
||||
"ownerFamily": "RELEASE",
|
||||
"implementationClass": "LOCAL_BOUNDED"
|
||||
},
|
||||
"commands": [
|
||||
"node tools/web/check-task-context.mjs --task WBV2-P16-003 --write"
|
||||
],
|
||||
"inputPaths": [],
|
||||
"inputSelection": {
|
||||
"schemaVersion": 1,
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 1750,
|
||||
"contextRemainingTokens": 436
|
||||
},
|
||||
"source": {
|
||||
"bytes": 8154,
|
||||
"tokens": 2040
|
||||
},
|
||||
"selected": [],
|
||||
"excluded": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-002/paint-attributes-receipt-report.json",
|
||||
"bytes": 4170,
|
||||
"reason": "CONTEXT_REMAINING_SPACE"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P14-002/capability-evidence-matrix.json",
|
||||
"bytes": 9752,
|
||||
"reason": "EVIDENCE_BYTE_BUDGET"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-003/",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P16-003.md",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-003/manifest.json",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
}
|
||||
],
|
||||
"totals": {
|
||||
"files": 0,
|
||||
"bytes": 0,
|
||||
"tokens": 0
|
||||
}
|
||||
},
|
||||
"exitCriteria": [
|
||||
"only tested paint behavior is claimed",
|
||||
"inventory remainder stays explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"nextTask": null,
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P16-003.md",
|
||||
"taskIndex": "tests/golden/WBV2/task-index.json",
|
||||
"parentManifest": "tests/golden/WBV2-P16-002/manifest.json",
|
||||
"parentStatus": "docs/status/WBV2-P16-002.md"
|
||||
},
|
||||
"readPolicy": {
|
||||
"required": [
|
||||
"docs/EXECUTION_QUEUE.md",
|
||||
"docs/tasks/WBV2-P16-003.md",
|
||||
"tests/golden/WBV2-P16-002/manifest.json",
|
||||
"docs/status/WBV2-P16-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-P16-002",
|
||||
"parentTask": "WBV2-P16-001",
|
||||
"status": "done",
|
||||
"nextTask": "WBV2-P16-003",
|
||||
"artifactCount": 15
|
||||
},
|
||||
"statusSummary": [
|
||||
"# WBV2-P16-002 status",
|
||||
"- task: `WBV2-P16-002`; parent: `WBV2-P16-001`; status: `done`",
|
||||
"- Chromium/WASM Main operations: `setVertexColors`, `setVertexWeights`",
|
||||
"- exact inventory bindings: `operator:paint.vertex_color_set`, `operator:paint.weight_set`",
|
||||
"- revisions: colors `1 -> 4`; weights `1 -> 5`; malformed color input rejected",
|
||||
"- save/reopen: `EXACT`; deterministic second run: `true`",
|
||||
"- representative slice: `true`; full-family parity: `false`; inventory pending before overlay: `6618`",
|
||||
"- nextTask: `WBV2-P16-003`"
|
||||
]
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1167,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 35,
|
||||
"taskTokens": 292
|
||||
},
|
||||
"size": {
|
||||
"documents": [
|
||||
{
|
||||
"path": "docs/EXECUTION_QUEUE.md",
|
||||
"bytes": 2803,
|
||||
"lines": 51,
|
||||
"tokens": 701
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P16-003.md",
|
||||
"bytes": 1167,
|
||||
"lines": 35,
|
||||
"tokens": 292
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-002/manifest.json",
|
||||
"bytes": 3463,
|
||||
"lines": 93,
|
||||
"tokens": 866
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P16-002.md",
|
||||
"bytes": 721,
|
||||
"lines": 12,
|
||||
"tokens": 181
|
||||
}
|
||||
],
|
||||
"sourceTokens": 2040,
|
||||
"evidenceFiles": 0,
|
||||
"evidenceBytes": 0,
|
||||
"evidenceTokens": 0,
|
||||
"totalTokens": 2040,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 3064,
|
||||
"serializedContextTokens": 613,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{"id":"WBV2-P15-000","gapId":"workflow:authorize_lighting_capability_continuation","ownerFamily":"PROGRAM","sourceTask":"P15","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["P14 coverage remains hash-bound","source command and Chromium test exist","one production task is active"]}
|
||||
{"id":"WBV2-P15-001","gapId":"RENDER.LIGHTING_FIELDS","ownerFamily":"PARITY","sourceTask":"P15","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["source API is present","Chromium test is present","candidate remains representative rather than full-family completion"]}
|
||||
{"id":"WBV2-P15-002","gapId":"RENDER.LIGHTING_FIELDS","ownerFamily":"RENDER","sourceTask":"P15","state":"completed","targetImplementationClass":"LOCAL_EXACT","exitCriteria":["camera/light/world fields match","undo/redo revisions are sequential","save/reopen is exact","malformed values fail closed"]}
|
||||
{"id":"WBV2-P15-003","gapId":"workflow:close_lighting_capability_gate","ownerFamily":"RELEASE","sourceTask":"P15","state":"active","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["only the tested slice is claimed","inventory remainder remains 6618","no repeated validation or historical over-claim"]}
|
||||
{"id":"WBV2-P16-000","gapId":"workflow:authorize_paint_capability_continuation","ownerFamily":"PROGRAM","sourceTask":"P16","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["P15 evidence remains hash-bound","paint source and fixtures exist","one production task is active"]}
|
||||
{"id":"WBV2-P16-001","gapId":"SCULPT.PAINT_ATTRIBUTES","ownerFamily":"PARITY","sourceTask":"P16","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["source commands are present","existing paint evidence is reused","candidate remains representative"]}
|
||||
{"id":"WBV2-P16-002","gapId":"SCULPT.PAINT_ATTRIBUTES","ownerFamily":"SCULPT","sourceTask":"P16","state":"completed","targetImplementationClass":"LOCAL_EXACT","exitCriteria":["vertex colors and weights match","undo/redo is sequential","malformed input fails closed","save/reopen is exact"]}
|
||||
{"id":"WBV2-P16-003","gapId":"workflow:close_paint_capability_gate","ownerFamily":"RELEASE","sourceTask":"P16","state":"active","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["only tested paint behavior is claimed","inventory remainder stays explicit","no duplicate validation or historical over-claim"]}
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"schemaVersion":1,"operation":"BLENDER_WEB_CAPABILITY_TASK_INDEX","source":{"path":"tests/golden/WBV2-P15-003/lights-task-plan.json","sha256":"79fbb2b8ce4280ccd39bbe7af00ad515daedbb973498d8de51b00461450f5c8c"},"catalog":{"path":"tests/golden/WBV2/task-catalog.jsonl","sha256":"82bb887081c15924edff8cca011d9f2d77c982718fbdd81d8c3dbbc1f99e8f6a"},"taskCount":4,"activeTask":"WBV2-P15-003","entries":{"WBV2-P15-000":{"line":0,"offset":0,"length":315,"previous":"WBV2-P14-003","next":"WBV2-P15-001"},"WBV2-P15-001":{"line":1,"offset":315,"length":299,"previous":"WBV2-P15-000","next":"WBV2-P15-002"},"WBV2-P15-002":{"line":2,"offset":614,"length":301,"previous":"WBV2-P15-001","next":"WBV2-P15-003"},"WBV2-P15-003":{"line":3,"offset":915,"length":313,"previous":"WBV2-P15-002","next":null}}}
|
||||
{"schemaVersion":1,"operation":"BLENDER_WEB_CAPABILITY_TASK_INDEX","source":{"path":"tests/golden/WBV2-P16-003/paint-task-plan.json","sha256":"830162784de4c873db7408f838110d528185606cff2877187ccf365c93882389"},"catalog":{"path":"tests/golden/WBV2/task-catalog.jsonl","sha256":"fdc0994965aa5322ac6f89c6e3633dc63df56d532cf3ee3e16cf3cdb57b3bb31"},"taskCount":4,"activeTask":"WBV2-P16-003","entries":{"WBV2-P16-000":{"line":0,"offset":0,"length":305,"previous":"WBV2-P15-003","next":"WBV2-P16-001"},"WBV2-P16-001":{"line":1,"offset":305,"length":280,"previous":"WBV2-P16-000","next":"WBV2-P16-002"},"WBV2-P16-002":{"line":2,"offset":585,"length":291,"previous":"WBV2-P16-001","next":"WBV2-P16-003"},"WBV2-P16-003":{"line":3,"offset":876,"length":318,"previous":"WBV2-P16-002","next":null}}}
|
||||
|
||||
Reference in New Issue
Block a user