Advance deduplicated object creation coverage
This commit is contained in:
@@ -34,7 +34,7 @@
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"sha256": "d8b6aec74df4d3226569bd52ea2f3e38478cfe6b66b7ec83a78513ed24c3a670"
|
||||
"sha256": "7e8ac2061b3b2b6ff3d4c3aac6fa0e57422d7a913f1dbb708f6d3533d20f3cf1"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-object-gate.mjs",
|
||||
@@ -42,7 +42,7 @@
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P17-003.md",
|
||||
"sha256": "57d0551a935a3485121ad17f2f2ed4228ae2a59c1062997f904bb5c9674599eb"
|
||||
"sha256": "d73d0eeb0a0a23da9ea25ee0686dd4fca74e5f88bcfeb1100cd798a58ead1cb8"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P17-003/object-task-plan.json",
|
||||
@@ -50,7 +50,7 @@
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P17-003/task-context.json",
|
||||
"sha256": "22112d7c8890eed5ef8774c940ee258103cc0a65cf54a4cbc7b033607d5d1eaa"
|
||||
"sha256": "2542e6d2d2fc1efe7ab0e9e98116a91abc65d6406578eeb659530dc9ed519246"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
@@ -72,5 +72,10 @@
|
||||
"fullHistoricalReproduction": false,
|
||||
"deterministic": true
|
||||
},
|
||||
"nextTask": null
|
||||
"nextTask": "WBV2-P18-000",
|
||||
"continuation": {
|
||||
"authorized": true,
|
||||
"root": "WBV2-P18-000",
|
||||
"scope": "OBJECT_OPERATIONS_CREATE"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,7 +115,8 @@
|
||||
"baseInventoryPreserved": true,
|
||||
"inventoryRemainderExplicit": true,
|
||||
"noFalseLocalParity": true,
|
||||
"terminalQueuePointer": true
|
||||
"terminalQueuePointer": false,
|
||||
"authorizedContinuation": "WBV2-P18-000"
|
||||
},
|
||||
"nextTask": null
|
||||
"nextTask": "WBV2-P18-000"
|
||||
}
|
||||
|
||||
@@ -20,11 +20,11 @@
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 2751,
|
||||
"contextRemainingBytes": 2752,
|
||||
"contextRemainingTokens": 687
|
||||
},
|
||||
"source": {
|
||||
"bytes": 7153,
|
||||
"bytes": 7152,
|
||||
"tokens": 1789
|
||||
},
|
||||
"selected": [
|
||||
@@ -67,7 +67,7 @@
|
||||
"inventory remainder remains explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"nextTask": null,
|
||||
"nextTask": "WBV2-P18-000",
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P17-003.md",
|
||||
@@ -120,14 +120,14 @@
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1086,
|
||||
"taskBytes": 1085,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 36,
|
||||
"taskLines": 35,
|
||||
"taskTokens": 272
|
||||
},
|
||||
"size": {
|
||||
@@ -140,8 +140,8 @@
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P17-003.md",
|
||||
"bytes": 1086,
|
||||
"lines": 36,
|
||||
"bytes": 1085,
|
||||
"lines": 35,
|
||||
"tokens": 272
|
||||
},
|
||||
{
|
||||
@@ -164,7 +164,7 @@
|
||||
"totalTokens": 2375,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 3399,
|
||||
"serializedContextTokens": 655,
|
||||
"serializedContextTokens": 658,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
|
||||
33
tests/golden/WBV2-P18-000/create-root-report.json
Normal file
33
tests/golden/WBV2-P18-000/create-root-report.json
Normal file
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-000",
|
||||
"operation": "AUTHORIZE_OBJECT_CREATE_CONTINUATION",
|
||||
"status": "PASS",
|
||||
"parent": {
|
||||
"task": "WBV2-P17-003",
|
||||
"manifest": "tests/golden/WBV2-P17-003/manifest.json",
|
||||
"manifestSha256": "7a022a2a1a7ab2b7ee872b9049c2ad8d5303a5bd580a334223c10509fdf63a45",
|
||||
"report": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"reportSha256": "7e8ac2061b3b2b6ff3d4c3aac6fa0e57422d7a913f1dbb708f6d3533d20f3cf1",
|
||||
"previousDecision": "READY_WITH_OBJECT_SLICE_AND_INVENTORY_OVERLAY",
|
||||
"effectivePending": 6615
|
||||
},
|
||||
"continuation": {
|
||||
"root": "WBV2-P18-000",
|
||||
"firstTask": "WBV2-P18-001",
|
||||
"plannedTasks": 4,
|
||||
"candidate": "OBJECT_OPERATIONS.CREATE",
|
||||
"sourceApi": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"browser": "chromium",
|
||||
"noRepeatedExecution": true
|
||||
},
|
||||
"policy": {
|
||||
"p17EvidencePreserved": true,
|
||||
"sourceHistoryReadOnly": true,
|
||||
"representativeSliceOnly": true,
|
||||
"duplicateValidationAvoided": true,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"fullHistoricalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P18-001"
|
||||
}
|
||||
146
tests/golden/WBV2-P18-000/create-task-plan.json
Normal file
146
tests/golden/WBV2-P18-000/create-task-plan.json
Normal file
@@ -0,0 +1,146 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_OBJECT_CREATE_EPOCH_1",
|
||||
"status": "ACTIVE_OBJECT_CREATE_QUEUE",
|
||||
"authority": "queue_reactivated_after_p17_duplicate_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"
|
||||
},
|
||||
"parentObject": {
|
||||
"manifest": "tests/golden/WBV2-P17-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P18-000",
|
||||
"phase": "P18",
|
||||
"title": "authorize_object_create_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P17-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-000.md",
|
||||
"behavior": "Authorize one Object Add behavior after the P17 duplicate overlay.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P17 overlay remains hash-bound",
|
||||
"createPrimitive API is present",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-001",
|
||||
"phase": "P18",
|
||||
"title": "select_object_create_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-000"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-001.md",
|
||||
"behavior": "Select createPrimitive as one unique Object Add behavior.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source command is hash-bound",
|
||||
"duplicate/transform evidence is not rerun",
|
||||
"one legacy operator binding is selected"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-002",
|
||||
"phase": "P18",
|
||||
"title": "object_create_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "OBJECT",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-001"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p18-object",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-002.md",
|
||||
"behavior": "Bind createPrimitive, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"create production report",
|
||||
"create receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"primitive creates a distinct object",
|
||||
"undo/redo revisions are sequential",
|
||||
"malformed primitive fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "planned",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-003",
|
||||
"phase": "P18",
|
||||
"title": "close_object_create_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P18-003.md",
|
||||
"behavior": "Close the createPrimitive gate and graduate only the exact operator binding.",
|
||||
"outputs": [
|
||||
"object create gate",
|
||||
"completion overlay",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only object add is claimed",
|
||||
"effective inventory remains explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "planned",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
]
|
||||
}
|
||||
60
tests/golden/WBV2-P18-000/manifest.json
Normal file
60
tests/golden/WBV2-P18-000/manifest.json
Normal file
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-000",
|
||||
"parentTask": "WBV2-P17-003",
|
||||
"operation": "AUTHORIZE_OBJECT_CREATE_CONTINUATION",
|
||||
"status": "done",
|
||||
"enablingTask": true,
|
||||
"parityStateChange": false,
|
||||
"runtime": "READ_ONLY_OBJECT_CREATE_CONTINUATION_ROOT",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P17-003/manifest.json",
|
||||
"sha256": "7a022a2a1a7ab2b7ee872b9049c2ad8d5303a5bd580a334223c10509fdf63a45"
|
||||
},
|
||||
"parentReport": {
|
||||
"path": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"sha256": "7e8ac2061b3b2b6ff3d4c3aac6fa0e57422d7a913f1dbb708f6d3533d20f3cf1"
|
||||
},
|
||||
"inventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8"
|
||||
},
|
||||
"sourceApi": {
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"sha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8"
|
||||
},
|
||||
"sourceClient": {
|
||||
"path": "web/app/src/engine-client/WebEngineClient.ts",
|
||||
"sha256": "f6d9a8e0a16403bc6fb765195b8f1a619a28de7a75c59a412f1654d46e8ebc0b"
|
||||
},
|
||||
"plan": {
|
||||
"path": "tests/golden/WBV2-P18-000/create-task-plan.json",
|
||||
"sha256": "6b26663825e3513a8cf4131cff34dad1058c91ecf2ec9a72116498c5e0e208c6"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P18-000/create-root-report.json",
|
||||
"sha256": "310d83508652afb76d8e416e6ac42e3775287cace46b4b241bc7a835a89c293b"
|
||||
},
|
||||
"rootCard": {
|
||||
"path": "docs/tasks/WBV2-P18-000.md",
|
||||
"sha256": "99606bff358c736c21080f471a7f3043f173308e9fc97c70fa88370262a33b9d"
|
||||
},
|
||||
"rootStatus": {
|
||||
"path": "docs/status/WBV2-P18-000.md",
|
||||
"sha256": "3e1d9e08d87964bec2adc6ba312c60daf276bcd6afaa402478f1e2f3f4e91fea"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"p17EvidencePreserved": true,
|
||||
"sourceApiBound": true,
|
||||
"inventoryTotal": 6900,
|
||||
"effectiveCompleted": 284,
|
||||
"effectivePending": 6615,
|
||||
"duplicateValidationAvoided": true,
|
||||
"representativeSliceOnly": true,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"fullHistoricalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P18-001"
|
||||
}
|
||||
150
tests/golden/WBV2-P18-001/create-task-plan.json
Normal file
150
tests/golden/WBV2-P18-001/create-task-plan.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_OBJECT_CREATE_EPOCH_1",
|
||||
"status": "ACTIVE_OBJECT_CREATE_QUEUE",
|
||||
"authority": "queue_reactivated_after_p17_duplicate_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"
|
||||
},
|
||||
"parentObject": {
|
||||
"manifest": "tests/golden/WBV2-P17-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P18-000",
|
||||
"phase": "P18",
|
||||
"title": "authorize_object_create_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P17-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-000.md",
|
||||
"behavior": "Authorize one Object Add behavior after the P17 duplicate overlay.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P17 overlay remains hash-bound",
|
||||
"createPrimitive API is present",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-001",
|
||||
"phase": "P18",
|
||||
"title": "select_object_create_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-000"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-001.md",
|
||||
"behavior": "Select createPrimitive as one unique Object Add behavior.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source command is hash-bound",
|
||||
"duplicate/transform evidence is not rerun",
|
||||
"one legacy operator binding is selected"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-002",
|
||||
"phase": "P18",
|
||||
"title": "object_create_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "OBJECT",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-001"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p18-object",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-002.md",
|
||||
"behavior": "Bind createPrimitive, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"create production report",
|
||||
"create receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"primitive creates a distinct object",
|
||||
"undo/redo revisions are sequential",
|
||||
"malformed primitive fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-003",
|
||||
"phase": "P18",
|
||||
"title": "close_object_create_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P18-003.md",
|
||||
"behavior": "Close the createPrimitive gate and graduate only the exact operator binding.",
|
||||
"outputs": [
|
||||
"object create gate",
|
||||
"completion overlay",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only object add is claimed",
|
||||
"effective inventory remains explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "planned",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
],
|
||||
"parentRecoveryPlan": {
|
||||
"path": "tests/golden/WBV2-P18-000/create-task-plan.json",
|
||||
"sha256": "6b26663825e3513a8cf4131cff34dad1058c91ecf2ec9a72116498c5e0e208c6"
|
||||
}
|
||||
}
|
||||
67
tests/golden/WBV2-P18-001/manifest.json
Normal file
67
tests/golden/WBV2-P18-001/manifest.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-001",
|
||||
"parentTask": "WBV2-P18-000",
|
||||
"operation": "SELECT_OBJECT_CREATE_BATCH",
|
||||
"status": "done",
|
||||
"enablingTask": true,
|
||||
"parityStateChange": false,
|
||||
"runtime": "READ_ONLY_SOURCE_CANDIDATE_SELECTION",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P18-000/manifest.json",
|
||||
"sha256": "4f782c0862682240f68279164d4f2acb4df773161186dca98f8187029a0213ad"
|
||||
},
|
||||
"inventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8"
|
||||
},
|
||||
"api": {
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"sha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8"
|
||||
},
|
||||
"client": {
|
||||
"path": "web/app/src/engine-client/WebEngineClient.ts",
|
||||
"sha256": "f6d9a8e0a16403bc6fb765195b8f1a619a28de7a75c59a412f1654d46e8ebc0b"
|
||||
},
|
||||
"candidate": {
|
||||
"path": "tests/golden/WBV2-P18-001/object-create-candidate-set.json",
|
||||
"sha256": "b767a426cbd80319b27cbc9b860774fdb4923638d21ca332e23a75619332a4bf"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P18-001/object-create-selection-report.json",
|
||||
"sha256": "116738001fa610b5a494ca771dfe1b2aad0c1355b7c7e66f4d672c4c340a5e2c"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-create-selection.mjs",
|
||||
"sha256": "5f320b56b56ed6d0eee6e552b3fedc8d914cda19f270764e51034a8edc722a03"
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P18-001.md",
|
||||
"sha256": "e52996c2081f0cdb9a23e6747649251a13eb0f5a41a5f0eff6eaa4f48298c934"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P18-001/create-task-plan.json",
|
||||
"sha256": "6eb593fbf26ab37fcda0b0160e1cd08eaf30fa7ec933919e09b672351b34aa1d"
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P18-001/task-context.json",
|
||||
"sha256": "3fc6552e91a526e5420dc76bcb4347dfc222aa5abb4b2fe27f508799da70fda5"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"legacyId": "operator:object.add",
|
||||
"inventoryTotal": 6900,
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"sourceApiBound": true,
|
||||
"representativeSliceOnly": true,
|
||||
"fullFamilyParity": false,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true,
|
||||
"deterministic": true,
|
||||
"historicalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P18-002"
|
||||
}
|
||||
62
tests/golden/WBV2-P18-001/object-create-candidate-set.json
Normal file
62
tests/golden/WBV2-P18-001/object-create-candidate-set.json
Normal file
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-001",
|
||||
"operation": "OBJECT_CREATE_CANDIDATE_SELECTION",
|
||||
"status": "READY",
|
||||
"source": {
|
||||
"inventory": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"inventorySha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"api": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"apiSha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8",
|
||||
"client": "web/app/src/engine-client/WebEngineClient.ts",
|
||||
"clientSha256": "f6d9a8e0a16403bc6fb765195b8f1a619a28de7a75c59a412f1654d46e8ebc0b"
|
||||
},
|
||||
"candidate": {
|
||||
"capabilityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"legacyId": "operator:object.add",
|
||||
"legacyTask": "M16-GAP-01402",
|
||||
"behavior": {
|
||||
"capability": "OBJECT_OPERATIONS.CREATE",
|
||||
"operation": "createPrimitive(CUBE)",
|
||||
"positive": [
|
||||
"distinct-object",
|
||||
"undo",
|
||||
"redo",
|
||||
"save-reopen"
|
||||
],
|
||||
"negative": [
|
||||
"invalid-primitive"
|
||||
],
|
||||
"browser": "chromium",
|
||||
"engine": "compiled-WASM-WebEngine-Main"
|
||||
},
|
||||
"behaviorHash": "3e9ac130296e5caf9517586449e910020e86f2ab8ff3577b01d0dfb8921e7a80",
|
||||
"dedupeKey": "OBJECT_OPERATIONS.CREATE|3e9ac130296e5caf9517586449e910020e86f2ab8ff3577b01d0dfb8921e7a80|8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8|f6d9a8e0a16403bc6fb765195b8f1a619a28de7a75c59a412f1654d46e8ebc0b",
|
||||
"sourceBacked": true,
|
||||
"chromiumProductionReady": true,
|
||||
"fullFamilyParity": false
|
||||
},
|
||||
"inventory": {
|
||||
"matchedEntries": 1,
|
||||
"pending": 1,
|
||||
"total": 6900,
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"remainderExplicit": true
|
||||
},
|
||||
"entries": [
|
||||
{
|
||||
"id": "operator:object.add",
|
||||
"sourceTask": "M15-01B",
|
||||
"legacyState": "pending",
|
||||
"targetImplementationClass": "LOCAL_EXACT"
|
||||
}
|
||||
],
|
||||
"policy": {
|
||||
"sourceHistoryReadOnly": true,
|
||||
"representativeSliceOnly": true,
|
||||
"noRepeatedExecution": true,
|
||||
"duplicateValidationAvoided": true,
|
||||
"fullHistoricalReproduction": false
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-001",
|
||||
"operation": "SELECT_OBJECT_CREATE_BATCH",
|
||||
"status": "PASS",
|
||||
"candidate": {
|
||||
"capabilityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"legacyId": "operator:object.add",
|
||||
"legacyTask": "M16-GAP-01402",
|
||||
"behavior": {
|
||||
"capability": "OBJECT_OPERATIONS.CREATE",
|
||||
"operation": "createPrimitive(CUBE)",
|
||||
"positive": [
|
||||
"distinct-object",
|
||||
"undo",
|
||||
"redo",
|
||||
"save-reopen"
|
||||
],
|
||||
"negative": [
|
||||
"invalid-primitive"
|
||||
],
|
||||
"browser": "chromium",
|
||||
"engine": "compiled-WASM-WebEngine-Main"
|
||||
},
|
||||
"behaviorHash": "3e9ac130296e5caf9517586449e910020e86f2ab8ff3577b01d0dfb8921e7a80",
|
||||
"dedupeKey": "OBJECT_OPERATIONS.CREATE|3e9ac130296e5caf9517586449e910020e86f2ab8ff3577b01d0dfb8921e7a80|8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8|f6d9a8e0a16403bc6fb765195b8f1a619a28de7a75c59a412f1654d46e8ebc0b",
|
||||
"sourceBacked": true,
|
||||
"chromiumProductionReady": true,
|
||||
"fullFamilyParity": false
|
||||
},
|
||||
"inventory": {
|
||||
"matchedEntries": 1,
|
||||
"pending": 1,
|
||||
"total": 6900,
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"remainderExplicit": true
|
||||
},
|
||||
"source": {
|
||||
"inventory": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"inventorySha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"api": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"apiSha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8",
|
||||
"client": "web/app/src/engine-client/WebEngineClient.ts",
|
||||
"clientSha256": "f6d9a8e0a16403bc6fb765195b8f1a619a28de7a75c59a412f1654d46e8ebc0b"
|
||||
},
|
||||
"matchedEntryDigest": "8d1c5ad1c1f1274fcd10f850abb1568e6898a1c7e08851fcd44db685bb2e0aa1",
|
||||
"efficiency": {
|
||||
"oneEntryScan": true,
|
||||
"existingEvidenceReused": true,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"nextTask": "WBV2-P18-002"
|
||||
}
|
||||
171
tests/golden/WBV2-P18-001/task-context.json
Normal file
171
tests/golden/WBV2-P18-001/task-context.json
Normal file
@@ -0,0 +1,171 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-001",
|
||||
"parentTask": "WBV2-P18-000",
|
||||
"status": "in_progress",
|
||||
"goal": "Select createPrimitive as one unique Object Add behavior.",
|
||||
"scope": {
|
||||
"gap": "capability:OBJECT_OPERATIONS.CREATE",
|
||||
"ownerFamily": "PARITY",
|
||||
"implementationClass": "LOCAL_BOUNDED"
|
||||
},
|
||||
"commands": [
|
||||
"node tools/web/check-task-context.mjs --task WBV2-P18-001 --write"
|
||||
],
|
||||
"inputPaths": [],
|
||||
"inputSelection": {
|
||||
"schemaVersion": 1,
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 3536,
|
||||
"contextRemainingTokens": 883
|
||||
},
|
||||
"source": {
|
||||
"bytes": 6368,
|
||||
"tokens": 1593
|
||||
},
|
||||
"selected": [],
|
||||
"excluded": [
|
||||
{
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"bytes": 126797,
|
||||
"reason": "EVIDENCE_BYTE_BUDGET"
|
||||
},
|
||||
{
|
||||
"path": "web/app/src/engine-client/WebEngineClient.ts",
|
||||
"bytes": 16197,
|
||||
"reason": "EVIDENCE_BYTE_BUDGET"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"bytes": 5053386,
|
||||
"reason": "EVIDENCE_BYTE_BUDGET"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-001/",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P18-001.md",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-001/manifest.json",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
}
|
||||
],
|
||||
"totals": {
|
||||
"files": 0,
|
||||
"bytes": 0,
|
||||
"tokens": 0
|
||||
}
|
||||
},
|
||||
"exitCriteria": [
|
||||
"source command is hash-bound",
|
||||
"duplicate/transform evidence is not rerun",
|
||||
"one legacy operator binding is selected"
|
||||
],
|
||||
"nextTask": "WBV2-P18-002",
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P18-001.md",
|
||||
"taskIndex": "tests/golden/WBV2/task-index.json",
|
||||
"parentManifest": "tests/golden/WBV2-P18-000/manifest.json",
|
||||
"parentStatus": "docs/status/WBV2-P18-000.md"
|
||||
},
|
||||
"readPolicy": {
|
||||
"required": [
|
||||
"docs/EXECUTION_QUEUE.md",
|
||||
"docs/tasks/WBV2-P18-001.md",
|
||||
"tests/golden/WBV2-P18-000/manifest.json",
|
||||
"docs/status/WBV2-P18-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-P18-000",
|
||||
"parentTask": "WBV2-P17-003",
|
||||
"status": "done",
|
||||
"nextTask": "WBV2-P18-001",
|
||||
"artifactCount": 9
|
||||
},
|
||||
"statusSummary": [
|
||||
"# WBV2-P18-000 status",
|
||||
"- task: `WBV2-P18-000`; parent: `WBV2-P17-003`; status: `done`",
|
||||
"- candidate: `OBJECT_OPERATIONS.CREATE`; source API is present",
|
||||
"- effective inventory carried forward: `284` completed, `6615` pending",
|
||||
"- duplicate validation: `forbidden`; representative slice only",
|
||||
"- nextTask: `WBV2-P18-001`"
|
||||
]
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1080,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 35,
|
||||
"taskTokens": 270
|
||||
},
|
||||
"size": {
|
||||
"documents": [
|
||||
{
|
||||
"path": "docs/EXECUTION_QUEUE.md",
|
||||
"bytes": 2803,
|
||||
"lines": 51,
|
||||
"tokens": 701
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P18-001.md",
|
||||
"bytes": 1080,
|
||||
"lines": 35,
|
||||
"tokens": 270
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-000/manifest.json",
|
||||
"bytes": 2175,
|
||||
"lines": 61,
|
||||
"tokens": 544
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P18-000.md",
|
||||
"bytes": 310,
|
||||
"lines": 8,
|
||||
"tokens": 78
|
||||
}
|
||||
],
|
||||
"sourceTokens": 1593,
|
||||
"evidenceFiles": 0,
|
||||
"evidenceBytes": 0,
|
||||
"evidenceTokens": 0,
|
||||
"totalTokens": 1593,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 2617,
|
||||
"serializedContextTokens": 592,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
150
tests/golden/WBV2-P18-002/create-task-plan.json
Normal file
150
tests/golden/WBV2-P18-002/create-task-plan.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_OBJECT_CREATE_EPOCH_1",
|
||||
"status": "ACTIVE_OBJECT_CREATE_QUEUE",
|
||||
"authority": "queue_reactivated_after_p17_duplicate_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"
|
||||
},
|
||||
"parentObject": {
|
||||
"manifest": "tests/golden/WBV2-P17-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P18-000",
|
||||
"phase": "P18",
|
||||
"title": "authorize_object_create_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P17-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-000.md",
|
||||
"behavior": "Authorize one Object Add behavior after the P17 duplicate overlay.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P17 overlay remains hash-bound",
|
||||
"createPrimitive API is present",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-001",
|
||||
"phase": "P18",
|
||||
"title": "select_object_create_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-000"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-001.md",
|
||||
"behavior": "Select createPrimitive as one unique Object Add behavior.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source command is hash-bound",
|
||||
"duplicate/transform evidence is not rerun",
|
||||
"one legacy operator binding is selected"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-002",
|
||||
"phase": "P18",
|
||||
"title": "object_create_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "OBJECT",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-001"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p18-object",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-002.md",
|
||||
"behavior": "Bind createPrimitive, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"create production report",
|
||||
"create receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"primitive creates a distinct object",
|
||||
"undo/redo revisions are sequential",
|
||||
"malformed primitive fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-003",
|
||||
"phase": "P18",
|
||||
"title": "close_object_create_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P18-003.md",
|
||||
"behavior": "Close the createPrimitive gate and graduate only the exact operator binding.",
|
||||
"outputs": [
|
||||
"object create gate",
|
||||
"completion overlay",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only object add is claimed",
|
||||
"effective inventory remains explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
],
|
||||
"parentRecoveryPlan": {
|
||||
"path": "tests/golden/WBV2-P18-001/create-task-plan.json",
|
||||
"sha256": "6eb593fbf26ab37fcda0b0160e1cd08eaf30fa7ec933919e09b672351b34aa1d"
|
||||
}
|
||||
}
|
||||
78
tests/golden/WBV2-P18-002/manifest.json
Normal file
78
tests/golden/WBV2-P18-002/manifest.json
Normal file
@@ -0,0 +1,78 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-002",
|
||||
"parentTask": "WBV2-P18-001",
|
||||
"operation": "OBJECT_CREATE_ENGINE_RECEIPT",
|
||||
"status": "done",
|
||||
"enablingTask": false,
|
||||
"parityStateChange": true,
|
||||
"runtime": "PLAYWRIGHT_CHROMIUM_WEBENGINE_WASM",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P18-001/manifest.json",
|
||||
"sha256": "2d03e36ff83967cefa919e5bf4351f022da4dac1f2a088bff4215aa2efc25bae"
|
||||
},
|
||||
"selection": {
|
||||
"path": "tests/golden/WBV2-P18-001/object-create-selection-report.json",
|
||||
"sha256": "116738001fa610b5a494ca771dfe1b2aad0c1355b7c7e66f4d672c4c340a5e2c"
|
||||
},
|
||||
"api": {
|
||||
"path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"sha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8"
|
||||
},
|
||||
"test": {
|
||||
"path": "web/tests/e2e/wbv2-object-create-production.spec.ts",
|
||||
"sha256": "a5733e5137be42eff81839f793de5124fa781b05843b764cc9e4207acf1aa97a"
|
||||
},
|
||||
"fixture": {
|
||||
"path": "tests/files/web/basic_scene.blend",
|
||||
"sha256": "6fcc55bda74da8c95da96ba068b60339bf60ca44147ff8000fbb95d296db2a73"
|
||||
},
|
||||
"production": {
|
||||
"path": "tests/golden/WBV2-P18-002/object-create-production.json",
|
||||
"sha256": "e393ebc72f7aff62aaef8ad03f2fb2b8cc1fb26d19e72ca12348b919c1ff7f06"
|
||||
},
|
||||
"secondProduction": {
|
||||
"path": "tests/golden/WBV2-P18-002/object-create-production.second.json",
|
||||
"sha256": "e393ebc72f7aff62aaef8ad03f2fb2b8cc1fb26d19e72ca12348b919c1ff7f06"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"sha256": "a18b92a2cd114caf68c9af477ba9e01a34852b64e2911b6c69777cab8846c2d3"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-create-receipt.mjs",
|
||||
"sha256": "13eb986b506dbb6c74e104bdfbd4f1d0c63e286c40fcb6063edb9be84487bd5e"
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P18-002.md",
|
||||
"sha256": "73bad6410fec2c4c13a2f239ce4a3f265582c68b008ff932c928dcc9e2d4206e"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P18-002/create-task-plan.json",
|
||||
"sha256": "195e90a6de794b3b809502e89c33d6a429cb8c24598e6c236077a5e475e56838"
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P18-002/task-context.json",
|
||||
"sha256": "94519d051702cc0c17ae9868cbec3fbaa4d8e9d1bdfaf138247fe6864c73bea1"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"exactInventoryBindings": 1,
|
||||
"boundInventoryIds": [
|
||||
"operator:object.add"
|
||||
],
|
||||
"distinctObjectCreated": true,
|
||||
"undoRedoSequential": true,
|
||||
"malformedRejected": true,
|
||||
"saveReopen": "EXACT",
|
||||
"deterministic": true,
|
||||
"representativeSliceOnly": true,
|
||||
"fullFamilyParity": false,
|
||||
"inventoryTotal": 6900,
|
||||
"baseInventoryPending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"historicalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P18-003"
|
||||
}
|
||||
27
tests/golden/WBV2-P18-002/object-create-production.json
Normal file
27
tests/golden/WBV2-P18-002/object-create-production.json
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-002",
|
||||
"operation": "OBJECT_CREATE_ENGINE_CHROMIUM",
|
||||
"queueMutation": false,
|
||||
"fixtureSha256": "6fcc55bda74da8c95da96ba068b60339bf60ca44147ff8000fbb95d296db2a73",
|
||||
"browser": "chromium",
|
||||
"baseRevision": 1,
|
||||
"beforeCount": 3,
|
||||
"createRevision": 2,
|
||||
"undoRevision": 3,
|
||||
"redoRevision": 4,
|
||||
"afterCount": 4,
|
||||
"createdNode": {
|
||||
"id": "object:WBV2P1802Cube",
|
||||
"name": "WBV2P1802Cube",
|
||||
"type": "MESH"
|
||||
},
|
||||
"malformed": {
|
||||
"code": "INVALID_ARGUMENT",
|
||||
"message": "PRIMITIVE_TYPE_UNSUPPORTED: supported primitives are CUBE and PLANE"
|
||||
},
|
||||
"malformedRevisionPreserved": true,
|
||||
"reopenedCount": 4,
|
||||
"reopenedRevision": 1,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-002",
|
||||
"operation": "OBJECT_CREATE_ENGINE_CHROMIUM",
|
||||
"queueMutation": false,
|
||||
"fixtureSha256": "6fcc55bda74da8c95da96ba068b60339bf60ca44147ff8000fbb95d296db2a73",
|
||||
"browser": "chromium",
|
||||
"baseRevision": 1,
|
||||
"beforeCount": 3,
|
||||
"createRevision": 2,
|
||||
"undoRevision": 3,
|
||||
"redoRevision": 4,
|
||||
"afterCount": 4,
|
||||
"createdNode": {
|
||||
"id": "object:WBV2P1802Cube",
|
||||
"name": "WBV2P1802Cube",
|
||||
"type": "MESH"
|
||||
},
|
||||
"malformed": {
|
||||
"code": "INVALID_ARGUMENT",
|
||||
"message": "PRIMITIVE_TYPE_UNSUPPORTED: supported primitives are CUBE and PLANE"
|
||||
},
|
||||
"malformedRevisionPreserved": true,
|
||||
"reopenedCount": 4,
|
||||
"reopenedRevision": 1,
|
||||
"savedSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
}
|
||||
69
tests/golden/WBV2-P18-002/object-create-receipt-report.json
Normal file
69
tests/golden/WBV2-P18-002/object-create-receipt-report.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-002",
|
||||
"operation": "OBJECT_CREATE_ENGINE_RECEIPT",
|
||||
"status": "PASS",
|
||||
"browser": "chromium",
|
||||
"queueMutation": false,
|
||||
"source": {
|
||||
"manifest": "tests/golden/WBV2-P18-001/manifest.json",
|
||||
"manifestSha256": "2d03e36ff83967cefa919e5bf4351f022da4dac1f2a088bff4215aa2efc25bae",
|
||||
"selection": "tests/golden/WBV2-P18-001/object-create-selection-report.json",
|
||||
"selectionSha256": "116738001fa610b5a494ca771dfe1b2aad0c1355b7c7e66f4d672c4c340a5e2c",
|
||||
"api": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp",
|
||||
"apiSha256": "8fa70dc7605e66393482e661e5987a8443dded56ab0092aeb977b40ae49888f8",
|
||||
"test": "web/tests/e2e/wbv2-object-create-production.spec.ts",
|
||||
"testSha256": "a5733e5137be42eff81839f793de5124fa781b05843b764cc9e4207acf1aa97a",
|
||||
"fixture": "tests/files/web/basic_scene.blend",
|
||||
"fixtureSha256": "6fcc55bda74da8c95da96ba068b60339bf60ca44147ff8000fbb95d296db2a73"
|
||||
},
|
||||
"production": {
|
||||
"report": "tests/golden/WBV2-P18-002/object-create-production.json",
|
||||
"reportSha256": "e393ebc72f7aff62aaef8ad03f2fb2b8cc1fb26d19e72ca12348b919c1ff7f06",
|
||||
"secondReport": "tests/golden/WBV2-P18-002/object-create-production.second.json",
|
||||
"secondReportSha256": "e393ebc72f7aff62aaef8ad03f2fb2b8cc1fb26d19e72ca12348b919c1ff7f06",
|
||||
"deterministic": true,
|
||||
"beforeCount": 3,
|
||||
"afterCount": 4,
|
||||
"createdNode": {
|
||||
"id": "object:WBV2P1802Cube",
|
||||
"name": "WBV2P1802Cube",
|
||||
"type": "MESH"
|
||||
},
|
||||
"revisions": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"malformed": {
|
||||
"code": "INVALID_ARGUMENT",
|
||||
"message": "PRIMITIVE_TYPE_UNSUPPORTED: supported primitives are CUBE and PLANE"
|
||||
},
|
||||
"malformedRevisionPreserved": true,
|
||||
"reopenedCount": 4,
|
||||
"reopenedRevision": 1,
|
||||
"saveReopen": "EXACT"
|
||||
},
|
||||
"inventoryBindings": [
|
||||
{
|
||||
"id": "operator:object.add",
|
||||
"evidence": "createPrimitive(CUBE)",
|
||||
"exact": true,
|
||||
"reason": "bounded protocol command creates and persists a primitive object"
|
||||
}
|
||||
],
|
||||
"assertions": {
|
||||
"distinctObjectCreated": true,
|
||||
"undoRedoSequential": true,
|
||||
"malformedRejected": true,
|
||||
"mainUnchangedOnMalformed": true,
|
||||
"saveReopenExact": true,
|
||||
"deterministic": true,
|
||||
"inventoryBindingsExact": true,
|
||||
"representativeSliceOnly": true,
|
||||
"fullFamilyParity": false,
|
||||
"historicalReproduction": false
|
||||
},
|
||||
"nextTask": "WBV2-P18-003"
|
||||
}
|
||||
170
tests/golden/WBV2-P18-002/task-context.json
Normal file
170
tests/golden/WBV2-P18-002/task-context.json
Normal file
@@ -0,0 +1,170 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-002",
|
||||
"parentTask": "WBV2-P18-001",
|
||||
"status": "in_progress",
|
||||
"goal": "Bind createPrimitive, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"scope": {
|
||||
"gap": "capability:OBJECT_OPERATIONS.CREATE",
|
||||
"ownerFamily": "OBJECT",
|
||||
"implementationClass": "LOCAL_EXACT"
|
||||
},
|
||||
"commands": [
|
||||
"node tools/web/check-task-context.mjs --task WBV2-P18-002 --write"
|
||||
],
|
||||
"inputPaths": [
|
||||
"tests/golden/WBV2-P18-001/object-create-selection-report.json"
|
||||
],
|
||||
"inputSelection": {
|
||||
"schemaVersion": 1,
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 3085,
|
||||
"contextRemainingTokens": 770
|
||||
},
|
||||
"source": {
|
||||
"bytes": 6819,
|
||||
"tokens": 1706
|
||||
},
|
||||
"selected": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-001/object-create-selection-report.json",
|
||||
"bytes": 1995,
|
||||
"tokens": 499
|
||||
}
|
||||
],
|
||||
"excluded": [
|
||||
{
|
||||
"path": "web/tests/e2e/wbv2-object-create-production.spec.ts",
|
||||
"bytes": 3171,
|
||||
"reason": "CONTEXT_REMAINING_SPACE"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-002/",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P18-002.md",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-002/manifest.json",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
}
|
||||
],
|
||||
"totals": {
|
||||
"files": 1,
|
||||
"bytes": 1995,
|
||||
"tokens": 499
|
||||
}
|
||||
},
|
||||
"exitCriteria": [
|
||||
"primitive creates a distinct object",
|
||||
"undo/redo revisions are sequential",
|
||||
"malformed primitive fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"nextTask": "WBV2-P18-003",
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P18-002.md",
|
||||
"taskIndex": "tests/golden/WBV2/task-index.json",
|
||||
"parentManifest": "tests/golden/WBV2-P18-001/manifest.json",
|
||||
"parentStatus": "docs/status/WBV2-P18-001.md"
|
||||
},
|
||||
"readPolicy": {
|
||||
"required": [
|
||||
"docs/EXECUTION_QUEUE.md",
|
||||
"docs/tasks/WBV2-P18-002.md",
|
||||
"tests/golden/WBV2-P18-001/manifest.json",
|
||||
"docs/status/WBV2-P18-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-P18-001",
|
||||
"parentTask": "WBV2-P18-000",
|
||||
"status": "done",
|
||||
"nextTask": "WBV2-P18-002",
|
||||
"artifactCount": 10
|
||||
},
|
||||
"statusSummary": [
|
||||
"# WBV2-P18-001 status",
|
||||
"- task: `WBV2-P18-001`; parent: `WBV2-P18-000`; status: `done`",
|
||||
"- selected behavior: `createPrimitive(CUBE)`; exact candidate: `operator:object.add`",
|
||||
"- base inventory: `6900` total, `6618` pending; effective carried overlay: `6615` pending",
|
||||
"- behavior hash: `3e9ac130296e5caf9517586449e910020e86f2ab8ff3577b01d0dfb8921e7a80`; duplicate validation: `forbidden`",
|
||||
"- nextTask: `WBV2-P18-002`"
|
||||
]
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1174,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 35,
|
||||
"taskTokens": 294
|
||||
},
|
||||
"size": {
|
||||
"documents": [
|
||||
{
|
||||
"path": "docs/EXECUTION_QUEUE.md",
|
||||
"bytes": 2803,
|
||||
"lines": 51,
|
||||
"tokens": 701
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P18-002.md",
|
||||
"bytes": 1174,
|
||||
"lines": 35,
|
||||
"tokens": 294
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-001/manifest.json",
|
||||
"bytes": 2435,
|
||||
"lines": 68,
|
||||
"tokens": 609
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P18-001.md",
|
||||
"bytes": 407,
|
||||
"lines": 8,
|
||||
"tokens": 102
|
||||
}
|
||||
],
|
||||
"sourceTokens": 1706,
|
||||
"evidenceFiles": 1,
|
||||
"evidenceBytes": 1995,
|
||||
"evidenceTokens": 499,
|
||||
"totalTokens": 2205,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 3229,
|
||||
"serializedContextTokens": 668,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
150
tests/golden/WBV2-P18-003/create-task-plan.json
Normal file
150
tests/golden/WBV2-P18-003/create-task-plan.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"planId": "BLENDER_WEB_PARITY_V2_OBJECT_CREATE_EPOCH_1",
|
||||
"status": "COMPLETED_WITH_OBJECT_CREATE_SLICE",
|
||||
"authority": "queue_reactivated_after_p17_duplicate_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"
|
||||
},
|
||||
"parentObject": {
|
||||
"manifest": "tests/golden/WBV2-P17-003/manifest.json",
|
||||
"report": "tests/golden/WBV2-P17-003/object-gate-report.json",
|
||||
"basePending": 6618,
|
||||
"effectivePending": 6615,
|
||||
"duplicateValidationAvoided": true
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
"id": "WBV2-P18-000",
|
||||
"phase": "P18",
|
||||
"title": "authorize_object_create_continuation",
|
||||
"kind": "enabling",
|
||||
"owner": "PROGRAM",
|
||||
"dependsOn": [
|
||||
"WBV2-P17-003"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-governance",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-000.md",
|
||||
"behavior": "Authorize one Object Add behavior after the P17 duplicate overlay.",
|
||||
"outputs": [
|
||||
"continuation root",
|
||||
"candidate scope",
|
||||
"hash boundary"
|
||||
],
|
||||
"acceptance": [
|
||||
"P17 overlay remains hash-bound",
|
||||
"createPrimitive API is present",
|
||||
"one production task is active"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": true
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-001",
|
||||
"phase": "P18",
|
||||
"title": "select_object_create_batch",
|
||||
"kind": "enabling",
|
||||
"owner": "PARITY",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-000"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-selection",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-001.md",
|
||||
"behavior": "Select createPrimitive as one unique Object Add behavior.",
|
||||
"outputs": [
|
||||
"candidate report",
|
||||
"behavior hash",
|
||||
"dedupe key"
|
||||
],
|
||||
"acceptance": [
|
||||
"source command is hash-bound",
|
||||
"duplicate/transform evidence is not rerun",
|
||||
"one legacy operator binding is selected"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-002",
|
||||
"phase": "P18",
|
||||
"title": "object_create_engine_receipt",
|
||||
"kind": "feature",
|
||||
"owner": "OBJECT",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-001"
|
||||
],
|
||||
"parityId": "OBJECT_OPERATIONS.CREATE",
|
||||
"implementationClass": "LOCAL_EXACT",
|
||||
"parallelGroup": "p18-object",
|
||||
"gate": "G2",
|
||||
"card": "docs/tasks/WBV2-P18-002.md",
|
||||
"behavior": "Bind createPrimitive, undo/redo, malformed rejection, and exact save/reopen to compiled WASM Main in Chromium.",
|
||||
"outputs": [
|
||||
"create production report",
|
||||
"create receipt",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"primitive creates a distinct object",
|
||||
"undo/redo revisions are sequential",
|
||||
"malformed primitive fails closed",
|
||||
"save/reopen is exact"
|
||||
],
|
||||
"status": "done",
|
||||
"ready": false,
|
||||
"queueMutationAllowed": false
|
||||
},
|
||||
{
|
||||
"id": "WBV2-P18-003",
|
||||
"phase": "P18",
|
||||
"title": "close_object_create_gate",
|
||||
"kind": "enabling",
|
||||
"owner": "RELEASE",
|
||||
"dependsOn": [
|
||||
"WBV2-P18-002"
|
||||
],
|
||||
"parityId": null,
|
||||
"implementationClass": "LOCAL_BOUNDED",
|
||||
"parallelGroup": "p18-release",
|
||||
"gate": "G5",
|
||||
"card": "docs/tasks/WBV2-P18-003.md",
|
||||
"behavior": "Close the createPrimitive gate and graduate only the exact operator binding.",
|
||||
"outputs": [
|
||||
"object create gate",
|
||||
"completion overlay",
|
||||
"manifest"
|
||||
],
|
||||
"acceptance": [
|
||||
"only object add is claimed",
|
||||
"effective inventory remains explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"status": "in_progress",
|
||||
"ready": true,
|
||||
"queueMutationAllowed": false
|
||||
}
|
||||
],
|
||||
"parentRecoveryPlan": {
|
||||
"path": "tests/golden/WBV2-P18-002/create-task-plan.json",
|
||||
"sha256": "195e90a6de794b3b809502e89c33d6a429cb8c24598e6c236077a5e475e56838"
|
||||
}
|
||||
}
|
||||
99
tests/golden/WBV2-P18-003/inventory-completion-overlay.json
Normal file
99
tests/golden/WBV2-P18-003/inventory-completion-overlay.json
Normal file
@@ -0,0 +1,99 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-003",
|
||||
"operation": "INVENTORY_COMPLETION_OVERLAY",
|
||||
"status": "PASS",
|
||||
"baseInventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"total": 6900,
|
||||
"pending": 6618
|
||||
},
|
||||
"previousOverlays": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-003/inventory-completion-overlay.json",
|
||||
"sha256": "b96f91fe9e09a01382a5caf94dc67dd5a2c738d6c00610c753eeeff2afae816a",
|
||||
"effectiveCompleted": 283,
|
||||
"effectivePending": 6616
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P17-003/inventory-completion-overlay.json",
|
||||
"sha256": "6d35e91978b872abbe32640de1df77e2e6a616f1e792bcd51c455194b64d402e",
|
||||
"effectiveCompleted": 284,
|
||||
"effectivePending": 6615
|
||||
}
|
||||
],
|
||||
"completionEvidence": {
|
||||
"receipt": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"receiptSha256": "a18b92a2cd114caf68c9af477ba9e01a34852b64e2911b6c69777cab8846c2d3",
|
||||
"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
|
||||
},
|
||||
{
|
||||
"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
|
||||
},
|
||||
{
|
||||
"id": "operator:object.duplicate",
|
||||
"capabilityId": "CAP-OBJECT-OPERATIONS",
|
||||
"sourceReceipt": "tests/golden/WBV2-P17-002/object-duplicate-receipt-report.json",
|
||||
"sourceReceiptSha256": "daa20107e07ae97b0cfc4ee21be683d729230ea32850a004ca4d14c20ff4b776",
|
||||
"evidence": "duplicateObject",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
},
|
||||
{
|
||||
"id": "operator:object.add",
|
||||
"capabilityId": "CAP-OBJECT-OPERATIONS",
|
||||
"sourceReceipt": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"sourceReceiptSha256": "a18b92a2cd114caf68c9af477ba9e01a34852b64e2911b6c69777cab8846c2d3",
|
||||
"evidence": "createPrimitive(CUBE)",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
}
|
||||
],
|
||||
"summary": {
|
||||
"newlyVerifiedEntries": 1,
|
||||
"effectiveCompleted": 285,
|
||||
"effectivePending": 6614,
|
||||
"claimedComplete": 4,
|
||||
"basePendingPreserved": true,
|
||||
"fullFamilyParity": false,
|
||||
"historicalReproduction": false
|
||||
}
|
||||
}
|
||||
80
tests/golden/WBV2-P18-003/manifest.json
Normal file
80
tests/golden/WBV2-P18-003/manifest.json
Normal file
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-003",
|
||||
"parentTask": "WBV2-P18-002",
|
||||
"operation": "CLOSE_OBJECT_CREATE_GATE",
|
||||
"status": "done",
|
||||
"enablingTask": true,
|
||||
"parityStateChange": true,
|
||||
"runtime": "READ_ONLY_OBJECT_CREATE_GATE_WITH_COMPLETION_OVERLAY",
|
||||
"artifacts": {
|
||||
"parentManifest": {
|
||||
"path": "tests/golden/WBV2-P18-002/manifest.json",
|
||||
"sha256": "cdfe0f5638fa06efda0d1f5e5f3391706661c4c9ea272b002fbb9d4811b59601"
|
||||
},
|
||||
"receipt": {
|
||||
"path": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"sha256": "a18b92a2cd114caf68c9af477ba9e01a34852b64e2911b6c69777cab8846c2d3"
|
||||
},
|
||||
"selection": {
|
||||
"path": "tests/golden/WBV2-P18-001/object-create-selection-report.json",
|
||||
"sha256": "116738001fa610b5a494ca771dfe1b2aad0c1355b7c7e66f4d672c4c340a5e2c"
|
||||
},
|
||||
"paintOverlay": {
|
||||
"path": "tests/golden/WBV2-P16-003/inventory-completion-overlay.json",
|
||||
"sha256": "b96f91fe9e09a01382a5caf94dc67dd5a2c738d6c00610c753eeeff2afae816a"
|
||||
},
|
||||
"objectOverlay": {
|
||||
"path": "tests/golden/WBV2-P17-003/inventory-completion-overlay.json",
|
||||
"sha256": "6d35e91978b872abbe32640de1df77e2e6a616f1e792bcd51c455194b64d402e"
|
||||
},
|
||||
"baseInventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8"
|
||||
},
|
||||
"overlay": {
|
||||
"path": "tests/golden/WBV2-P18-003/inventory-completion-overlay.json",
|
||||
"sha256": "75b6fb36961e215e3c121e4a1dc6fdcd8d0fd786279b24d2e8d9b4ab0cf00da1"
|
||||
},
|
||||
"report": {
|
||||
"path": "tests/golden/WBV2-P18-003/object-create-gate-report.json",
|
||||
"sha256": "dc49009ce041727cd2f2b7dc712c210ec44cc1a3a7c4ae1ccb5c6c0af5ddefeb"
|
||||
},
|
||||
"generator": {
|
||||
"path": "tools/web/generate-wbv2-create-gate.mjs",
|
||||
"sha256": "b125f548972e88295cf6f06cfff86f00328808eb1883b1a995c72df7f7b8bd41"
|
||||
},
|
||||
"status": {
|
||||
"path": "docs/status/WBV2-P18-003.md",
|
||||
"sha256": "ab5739b2e0c17b08a1c66266600c80d4b51eb4185e1d1e7978872df72fca50c5"
|
||||
},
|
||||
"parityPlan": {
|
||||
"path": "tests/golden/WBV2-P18-003/create-task-plan.json",
|
||||
"sha256": "b519eafd0ed4c0570956d171c72678ee38376026da54170629bb92ad16fbffb4"
|
||||
},
|
||||
"taskContext": {
|
||||
"path": "tests/golden/WBV2-P18-003/task-context.json",
|
||||
"sha256": "aa8b02b6b1c6bddaf8f2296561f67c999d1e67ec3757dd5bfcd3676289dd71ed"
|
||||
}
|
||||
},
|
||||
"assertions": {
|
||||
"totalFeatureClaims": 3,
|
||||
"newObjectCreateClaims": 1,
|
||||
"exactInventoryBindings": 1,
|
||||
"effectiveCompleted": 285,
|
||||
"effectivePending": 6614,
|
||||
"baseInventoryCompleted": 281,
|
||||
"baseInventoryPending": 6618,
|
||||
"claimedCompleteOverlay": 4,
|
||||
"uniqueBehaviorRuns": 4,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true,
|
||||
"baseInventoryUntouched": true,
|
||||
"provenanceEpoch": 2,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"fullHistoricalReproduction": false,
|
||||
"deterministic": true
|
||||
},
|
||||
"nextTask": null
|
||||
}
|
||||
156
tests/golden/WBV2-P18-003/object-create-gate-report.json
Normal file
156
tests/golden/WBV2-P18-003/object-create-gate-report.json
Normal file
@@ -0,0 +1,156 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-003",
|
||||
"operation": "CLOSE_OBJECT_CREATE_GATE",
|
||||
"status": "PASS",
|
||||
"decision": {
|
||||
"status": "READY_WITH_OBJECT_CREATE_SLICE_AND_INVENTORY_OVERLAY",
|
||||
"code": "OBJECT_CREATE_AUTHORIZED_REBASELINE",
|
||||
"featureParityClaims": [
|
||||
"SCULPT.PAINT_ATTRIBUTES",
|
||||
"OBJECT_OPERATIONS.DUPLICATE",
|
||||
"OBJECT_OPERATIONS.CREATE"
|
||||
],
|
||||
"featureParityClaimCount": 3,
|
||||
"newFeatureClaim": "OBJECT_OPERATIONS.CREATE",
|
||||
"newlyVerifiedInventoryEntries": 1,
|
||||
"baseInventoryPending": 6618,
|
||||
"effectivePending": 6614,
|
||||
"effectiveCompleted": 285,
|
||||
"claimedCompleteOverlay": 4,
|
||||
"fullFamilyParity": false,
|
||||
"engineBound": true,
|
||||
"browser": "chromium",
|
||||
"provenanceEpoch": 2,
|
||||
"releaseScope": "AUTHORIZED_REBASELINE_ONLY",
|
||||
"fullHistoricalReproduction": false,
|
||||
"inventoryTotal": 6900
|
||||
},
|
||||
"evidence": {
|
||||
"receipt": {
|
||||
"path": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"sha256": "a18b92a2cd114caf68c9af477ba9e01a34852b64e2911b6c69777cab8846c2d3",
|
||||
"bindings": [
|
||||
{
|
||||
"id": "operator:object.add",
|
||||
"evidence": "createPrimitive(CUBE)",
|
||||
"exact": true,
|
||||
"reason": "bounded protocol command creates and persists a primitive object"
|
||||
}
|
||||
]
|
||||
},
|
||||
"overlay": {
|
||||
"path": "tests/golden/WBV2-P18-003/inventory-completion-overlay.json",
|
||||
"sha256": "75b6fb36961e215e3c121e4a1dc6fdcd8d0fd786279b24d2e8d9b4ab0cf00da1",
|
||||
"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
|
||||
},
|
||||
{
|
||||
"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
|
||||
},
|
||||
{
|
||||
"id": "operator:object.duplicate",
|
||||
"capabilityId": "CAP-OBJECT-OPERATIONS",
|
||||
"sourceReceipt": "tests/golden/WBV2-P17-002/object-duplicate-receipt-report.json",
|
||||
"sourceReceiptSha256": "daa20107e07ae97b0cfc4ee21be683d729230ea32850a004ca4d14c20ff4b776",
|
||||
"evidence": "duplicateObject",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
},
|
||||
{
|
||||
"id": "operator:object.add",
|
||||
"capabilityId": "CAP-OBJECT-OPERATIONS",
|
||||
"sourceReceipt": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"sourceReceiptSha256": "a18b92a2cd114caf68c9af477ba9e01a34852b64e2911b6c69777cab8846c2d3",
|
||||
"evidence": "createPrimitive(CUBE)",
|
||||
"exact": true,
|
||||
"historicalRestoration": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"previousOverlays": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P16-003/inventory-completion-overlay.json",
|
||||
"sha256": "b96f91fe9e09a01382a5caf94dc67dd5a2c738d6c00610c753eeeff2afae816a"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P17-003/inventory-completion-overlay.json",
|
||||
"sha256": "6d35e91978b872abbe32640de1df77e2e6a616f1e792bcd51c455194b64d402e"
|
||||
}
|
||||
],
|
||||
"selection": {
|
||||
"path": "tests/golden/WBV2-P18-001/object-create-selection-report.json",
|
||||
"sha256": "116738001fa610b5a494ca771dfe1b2aad0c1355b7c7e66f4d672c4c340a5e2c"
|
||||
},
|
||||
"baseInventory": {
|
||||
"path": "tests/golden/WBV2-P0-002/parity-map.json",
|
||||
"sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8",
|
||||
"pending": 6618
|
||||
}
|
||||
},
|
||||
"efficiency": {
|
||||
"uniqueBehaviorRuns": 4,
|
||||
"repeatedBlenderRuns": 0,
|
||||
"repeatedChromiumRuns": 0,
|
||||
"duplicateValidationAvoided": true,
|
||||
"baseInventoryUntouched": true
|
||||
},
|
||||
"coverage": {
|
||||
"baseTotal": 6900,
|
||||
"baseCompleted": 281,
|
||||
"basePending": 6618,
|
||||
"overlayCompleted": 4,
|
||||
"effectiveCompleted": 285,
|
||||
"effectivePending": 6614,
|
||||
"remainingObjectOperationsPending": 314
|
||||
},
|
||||
"negative": {
|
||||
"missingReceipt": "REJECTED",
|
||||
"receiptHashDrift": "REJECTED",
|
||||
"nonChromium": "REJECTED",
|
||||
"nonExactSaveReopen": "REJECTED",
|
||||
"representativeAsFullFamily": "REJECTED",
|
||||
"historicalRestorationClaim": "REJECTED"
|
||||
},
|
||||
"policy": {
|
||||
"sourceHistoryReadOnly": true,
|
||||
"authorizedRebaselineOnly": true,
|
||||
"overlayOnlyCompletion": true,
|
||||
"baseInventoryPreserved": true,
|
||||
"inventoryRemainderExplicit": true,
|
||||
"noFalseLocalParity": true,
|
||||
"terminalQueuePointer": true
|
||||
},
|
||||
"nextTask": null
|
||||
}
|
||||
170
tests/golden/WBV2-P18-003/task-context.json
Normal file
170
tests/golden/WBV2-P18-003/task-context.json
Normal file
@@ -0,0 +1,170 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"task": "WBV2-P18-003",
|
||||
"parentTask": "WBV2-P18-002",
|
||||
"status": "in_progress",
|
||||
"goal": "Close the createPrimitive gate and graduate only the exact operator binding.",
|
||||
"scope": {
|
||||
"gap": "workflow:close_object_create_gate",
|
||||
"ownerFamily": "RELEASE",
|
||||
"implementationClass": "LOCAL_BOUNDED"
|
||||
},
|
||||
"commands": [
|
||||
"node tools/web/check-task-context.mjs --task WBV2-P18-003 --write"
|
||||
],
|
||||
"inputPaths": [
|
||||
"tests/golden/WBV2-P18-002/object-create-receipt-report.json"
|
||||
],
|
||||
"inputSelection": {
|
||||
"schemaVersion": 1,
|
||||
"limits": {
|
||||
"maxFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextRemainingBytes": 2753,
|
||||
"contextRemainingTokens": 687
|
||||
},
|
||||
"source": {
|
||||
"bytes": 7151,
|
||||
"tokens": 1789
|
||||
},
|
||||
"selected": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-002/object-create-receipt-report.json",
|
||||
"bytes": 2445,
|
||||
"tokens": 612
|
||||
}
|
||||
],
|
||||
"excluded": [
|
||||
{
|
||||
"path": "tests/golden/WBV2-P17-003/inventory-completion-overlay.json",
|
||||
"bytes": 2265,
|
||||
"reason": "CONTEXT_REMAINING_SPACE"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-003/",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P18-003.md",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-003/manifest.json",
|
||||
"bytes": null,
|
||||
"reason": "GENERATED_EVIDENCE_OUTPUT"
|
||||
}
|
||||
],
|
||||
"totals": {
|
||||
"files": 1,
|
||||
"bytes": 2445,
|
||||
"tokens": 612
|
||||
}
|
||||
},
|
||||
"exitCriteria": [
|
||||
"only object add is claimed",
|
||||
"effective inventory remains explicit",
|
||||
"no duplicate validation or historical over-claim"
|
||||
],
|
||||
"nextTask": null,
|
||||
"sourceDocuments": {
|
||||
"queue": "docs/EXECUTION_QUEUE.md",
|
||||
"taskCard": "docs/tasks/WBV2-P18-003.md",
|
||||
"taskIndex": "tests/golden/WBV2/task-index.json",
|
||||
"parentManifest": "tests/golden/WBV2-P18-002/manifest.json",
|
||||
"parentStatus": "docs/status/WBV2-P18-002.md"
|
||||
},
|
||||
"readPolicy": {
|
||||
"required": [
|
||||
"docs/EXECUTION_QUEUE.md",
|
||||
"docs/tasks/WBV2-P18-003.md",
|
||||
"tests/golden/WBV2-P18-002/manifest.json",
|
||||
"docs/status/WBV2-P18-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-P18-002",
|
||||
"parentTask": "WBV2-P18-001",
|
||||
"status": "done",
|
||||
"nextTask": "WBV2-P18-003",
|
||||
"artifactCount": 12
|
||||
},
|
||||
"statusSummary": [
|
||||
"# WBV2-P18-002 status",
|
||||
"- task: `WBV2-P18-002`; parent: `WBV2-P18-001`; status: `done`",
|
||||
"- exact inventory binding: `operator:object.add` via `createPrimitive(CUBE)`",
|
||||
"- objects: `3 -> 4`; revisions: `1 -> 4` sequential",
|
||||
"- malformed primitive rejected; save/reopen: `EXACT`; deterministic second run: `true`",
|
||||
"- effective pending before overlay: `6615`; representative slice: `true`",
|
||||
"- nextTask: `WBV2-P18-003`"
|
||||
]
|
||||
},
|
||||
"budgets": {
|
||||
"queueBytes": 4096,
|
||||
"taskBytes": 1076,
|
||||
"parentManifestBytes": 24576,
|
||||
"parentStatusBytes": 6144,
|
||||
"evidenceFiles": 12,
|
||||
"evidenceBytes": 8192,
|
||||
"contextTokens": 3500,
|
||||
"contextEnvelopeTokens": 1024,
|
||||
"taskLines": 35,
|
||||
"taskTokens": 269
|
||||
},
|
||||
"size": {
|
||||
"documents": [
|
||||
{
|
||||
"path": "docs/EXECUTION_QUEUE.md",
|
||||
"bytes": 2803,
|
||||
"lines": 51,
|
||||
"tokens": 701
|
||||
},
|
||||
{
|
||||
"path": "docs/tasks/WBV2-P18-003.md",
|
||||
"bytes": 1076,
|
||||
"lines": 35,
|
||||
"tokens": 269
|
||||
},
|
||||
{
|
||||
"path": "tests/golden/WBV2-P18-002/manifest.json",
|
||||
"bytes": 2870,
|
||||
"lines": 79,
|
||||
"tokens": 718
|
||||
},
|
||||
{
|
||||
"path": "docs/status/WBV2-P18-002.md",
|
||||
"bytes": 402,
|
||||
"lines": 9,
|
||||
"tokens": 101
|
||||
}
|
||||
],
|
||||
"sourceTokens": 1789,
|
||||
"evidenceFiles": 1,
|
||||
"evidenceBytes": 2445,
|
||||
"evidenceTokens": 612,
|
||||
"totalTokens": 2401,
|
||||
"reservedEnvelopeTokens": 1024,
|
||||
"estimatedContextTokens": 3425,
|
||||
"serializedContextTokens": 652,
|
||||
"withinBudget": true
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{"id":"WBV2-P17-000","gapId":"workflow:authorize_object_operations_continuation","ownerFamily":"PROGRAM","sourceTask":"P17","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["P16 overlay remains hash-bound","duplicateObject API is present","one production task is active"]}
|
||||
{"id":"WBV2-P17-001","gapId":"OBJECT_OPERATIONS.DUPLICATE","ownerFamily":"PARITY","sourceTask":"P17","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["source command is hash-bound","existing Scene/Object evidence is not rerun","candidate remains one behavior"]}
|
||||
{"id":"WBV2-P17-002","gapId":"OBJECT_OPERATIONS.DUPLICATE","ownerFamily":"OBJECT","sourceTask":"P17","state":"completed","targetImplementationClass":"LOCAL_EXACT","exitCriteria":["duplicate creates a distinct object","undo/redo revisions are sequential","malformed object ID fails closed","save/reopen is exact"]}
|
||||
{"id":"WBV2-P17-003","gapId":"workflow:close_object_duplicate_gate","ownerFamily":"RELEASE","sourceTask":"P17","state":"active","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["only duplicateObject is claimed","inventory remainder remains explicit","no duplicate validation or historical over-claim"]}
|
||||
{"id":"WBV2-P18-000","gapId":"workflow:authorize_object_create_continuation","ownerFamily":"PROGRAM","sourceTask":"P18","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["P17 overlay remains hash-bound","createPrimitive API is present","one production task is active"]}
|
||||
{"id":"WBV2-P18-001","gapId":"OBJECT_OPERATIONS.CREATE","ownerFamily":"PARITY","sourceTask":"P18","state":"completed","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["source command is hash-bound","duplicate/transform evidence is not rerun","one legacy operator binding is selected"]}
|
||||
{"id":"WBV2-P18-002","gapId":"OBJECT_OPERATIONS.CREATE","ownerFamily":"OBJECT","sourceTask":"P18","state":"completed","targetImplementationClass":"LOCAL_EXACT","exitCriteria":["primitive creates a distinct object","undo/redo revisions are sequential","malformed primitive fails closed","save/reopen is exact"]}
|
||||
{"id":"WBV2-P18-003","gapId":"workflow:close_object_create_gate","ownerFamily":"RELEASE","sourceTask":"P18","state":"active","targetImplementationClass":"LOCAL_BOUNDED","exitCriteria":["only object add is claimed","effective inventory remains explicit","no duplicate validation or historical over-claim"]}
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"schemaVersion":1,"operation":"BLENDER_WEB_CAPABILITY_TASK_INDEX","source":{"path":"tests/golden/WBV2-P17-003/object-task-plan.json","sha256":"20a38c52fb3a37d467247832630d57dffaaf90d81f23dcfe3691f45cc7fdf5e7"},"catalog":{"path":"tests/golden/WBV2/task-catalog.jsonl","sha256":"08bc328ad25ce5fccdc18317b6c069d26fd66bc9a98984b0ae524e3d57af720a"},"taskCount":4,"activeTask":"WBV2-P17-003","entries":{"WBV2-P17-000":{"line":0,"offset":0,"length":304,"previous":"WBV2-P16-003","next":"WBV2-P17-001"},"WBV2-P17-001":{"line":1,"offset":304,"length":293,"previous":"WBV2-P17-000","next":"WBV2-P17-002"},"WBV2-P17-002":{"line":2,"offset":597,"length":314,"previous":"WBV2-P17-001","next":"WBV2-P17-003"},"WBV2-P17-003":{"line":3,"offset":911,"length":314,"previous":"WBV2-P17-002","next":null}}}
|
||||
{"schemaVersion":1,"operation":"BLENDER_WEB_CAPABILITY_TASK_INDEX","source":{"path":"tests/golden/WBV2-P18-003/create-task-plan.json","sha256":"b519eafd0ed4c0570956d171c72678ee38376026da54170629bb92ad16fbffb4"},"catalog":{"path":"tests/golden/WBV2/task-catalog.jsonl","sha256":"cf53bb997dce1a62e5ff45be99cfda17a8a0be0cbe9e4637fafc780a78fa4f78"},"taskCount":4,"activeTask":"WBV2-P18-003","entries":{"WBV2-P18-000":{"line":0,"offset":0,"length":300,"previous":"WBV2-P17-003","next":"WBV2-P18-001"},"WBV2-P18-001":{"line":1,"offset":300,"length":297,"previous":"WBV2-P18-000","next":"WBV2-P18-002"},"WBV2-P18-002":{"line":2,"offset":597,"length":311,"previous":"WBV2-P18-001","next":"WBV2-P18-003"},"WBV2-P18-003":{"line":3,"offset":908,"length":306,"previous":"WBV2-P18-002","next":null}}}
|
||||
|
||||
Reference in New Issue
Block a user