Complete M16 asset operator parity chain
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled

This commit is contained in:
mes123456
2026-08-23 18:10:00 -04:00
parent c0d471da01
commit 5c8cfd1a8c
127 changed files with 5574 additions and 47 deletions

View File

@@ -0,0 +1,37 @@
# M16-GAP-00265: operator:asset.assets_download LOCAL_EXACT slice
- task: M16-GAP-00265
- parent: M16-GAP-00264
- status: in_progress
- gap: operator:asset.assets_download
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.assets_download data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00265-operator-asset.assets_download.blend`
- Generator: `tools/web/generated/M16-GAP-00265.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00265.py -- tests/files/web/generated/M16-GAP-00265-operator-asset.assets_download.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00265
node tools/web/check-generated-gap.mjs --task M16-GAP-00265
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00265/`
- Status: `docs/status/M16-GAP-00265.md`
- Manifest: `tests/golden/M16-GAP-00265/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00265 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00266: operator:asset.assign_action LOCAL_EXACT slice
- task: M16-GAP-00266
- parent: M16-GAP-00265
- status: in_progress
- gap: operator:asset.assign_action
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.assign_action data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00266-operator-asset.assign_action.blend`
- Generator: `tools/web/generated/M16-GAP-00266.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00266.py -- tests/files/web/generated/M16-GAP-00266-operator-asset.assign_action.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00266
node tools/web/check-generated-gap.mjs --task M16-GAP-00266
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00266/`
- Status: `docs/status/M16-GAP-00266.md`
- Manifest: `tests/golden/M16-GAP-00266/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00266 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00267: operator:asset.browse_containing_blend_file LOCAL_EXACT slice
- task: M16-GAP-00267
- parent: M16-GAP-00266
- status: in_progress
- gap: operator:asset.browse_containing_blend_file
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.browse_containing_blend_file data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00267-operator-asset.browse_containing_blend_file.blend`
- Generator: `tools/web/generated/M16-GAP-00267.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00267.py -- tests/files/web/generated/M16-GAP-00267-operator-asset.browse_containing_blend_file.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00267
node tools/web/check-generated-gap.mjs --task M16-GAP-00267
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00267/`
- Status: `docs/status/M16-GAP-00267.md`
- Manifest: `tests/golden/M16-GAP-00267/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00267 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00268: operator:asset.bundle_install LOCAL_EXACT slice
- task: M16-GAP-00268
- parent: M16-GAP-00267
- status: in_progress
- gap: operator:asset.bundle_install
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.bundle_install data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00268-operator-asset.bundle_install.blend`
- Generator: `tools/web/generated/M16-GAP-00268.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00268.py -- tests/files/web/generated/M16-GAP-00268-operator-asset.bundle_install.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00268
node tools/web/check-generated-gap.mjs --task M16-GAP-00268
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00268/`
- Status: `docs/status/M16-GAP-00268.md`
- Manifest: `tests/golden/M16-GAP-00268/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00268 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00269: operator:asset.catalog_delete LOCAL_EXACT slice
- task: M16-GAP-00269
- parent: M16-GAP-00268
- status: in_progress
- gap: operator:asset.catalog_delete
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.catalog_delete data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00269-operator-asset.catalog_delete.blend`
- Generator: `tools/web/generated/M16-GAP-00269.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00269.py -- tests/files/web/generated/M16-GAP-00269-operator-asset.catalog_delete.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00269
node tools/web/check-generated-gap.mjs --task M16-GAP-00269
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00269/`
- Status: `docs/status/M16-GAP-00269.md`
- Manifest: `tests/golden/M16-GAP-00269/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00269 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00270: operator:asset.catalog_new LOCAL_EXACT slice
- task: M16-GAP-00270
- parent: M16-GAP-00269
- status: in_progress
- gap: operator:asset.catalog_new
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.catalog_new data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00270-operator-asset.catalog_new.blend`
- Generator: `tools/web/generated/M16-GAP-00270.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00270.py -- tests/files/web/generated/M16-GAP-00270-operator-asset.catalog_new.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00270
node tools/web/check-generated-gap.mjs --task M16-GAP-00270
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00270/`
- Status: `docs/status/M16-GAP-00270.md`
- Manifest: `tests/golden/M16-GAP-00270/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00270 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00271: operator:asset.catalog_redo LOCAL_EXACT slice
- task: M16-GAP-00271
- parent: M16-GAP-00270
- status: in_progress
- gap: operator:asset.catalog_redo
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.catalog_redo data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00271-operator-asset.catalog_redo.blend`
- Generator: `tools/web/generated/M16-GAP-00271.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00271.py -- tests/files/web/generated/M16-GAP-00271-operator-asset.catalog_redo.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00271
node tools/web/check-generated-gap.mjs --task M16-GAP-00271
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00271/`
- Status: `docs/status/M16-GAP-00271.md`
- Manifest: `tests/golden/M16-GAP-00271/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00271 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00272: operator:asset.catalog_undo LOCAL_EXACT slice
- task: M16-GAP-00272
- parent: M16-GAP-00271
- status: in_progress
- gap: operator:asset.catalog_undo
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.catalog_undo data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00272-operator-asset.catalog_undo.blend`
- Generator: `tools/web/generated/M16-GAP-00272.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00272.py -- tests/files/web/generated/M16-GAP-00272-operator-asset.catalog_undo.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00272
node tools/web/check-generated-gap.mjs --task M16-GAP-00272
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00272/`
- Status: `docs/status/M16-GAP-00272.md`
- Manifest: `tests/golden/M16-GAP-00272/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00272 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00273: operator:asset.catalog_undo_push LOCAL_EXACT slice
- task: M16-GAP-00273
- parent: M16-GAP-00272
- status: in_progress
- gap: operator:asset.catalog_undo_push
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.catalog_undo_push data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00273-operator-asset.catalog_undo_push.blend`
- Generator: `tools/web/generated/M16-GAP-00273.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00273.py -- tests/files/web/generated/M16-GAP-00273-operator-asset.catalog_undo_push.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00273
node tools/web/check-generated-gap.mjs --task M16-GAP-00273
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00273/`
- Status: `docs/status/M16-GAP-00273.md`
- Manifest: `tests/golden/M16-GAP-00273/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00273 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00274: operator:asset.catalogs_save LOCAL_EXACT slice
- task: M16-GAP-00274
- parent: M16-GAP-00273
- status: in_progress
- gap: operator:asset.catalogs_save
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.catalogs_save data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00274-operator-asset.catalogs_save.blend`
- Generator: `tools/web/generated/M16-GAP-00274.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00274.py -- tests/files/web/generated/M16-GAP-00274-operator-asset.catalogs_save.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00274
node tools/web/check-generated-gap.mjs --task M16-GAP-00274
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00274/`
- Status: `docs/status/M16-GAP-00274.md`
- Manifest: `tests/golden/M16-GAP-00274/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00274 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00275: operator:asset.clear LOCAL_EXACT slice
- task: M16-GAP-00275
- parent: M16-GAP-00274
- status: in_progress
- gap: operator:asset.clear
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.clear data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00275-operator-asset.clear.blend`
- Generator: `tools/web/generated/M16-GAP-00275.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00275.py -- tests/files/web/generated/M16-GAP-00275-operator-asset.clear.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00275
node tools/web/check-generated-gap.mjs --task M16-GAP-00275
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00275/`
- Status: `docs/status/M16-GAP-00275.md`
- Manifest: `tests/golden/M16-GAP-00275/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00275 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.

View File

@@ -0,0 +1,37 @@
# M16-GAP-00276: operator:asset.clear_single LOCAL_EXACT slice
- task: M16-GAP-00276
- parent: M16-GAP-00275
- status: in_progress
- gap: operator:asset.clear_single
- ownerFamily: OPERATOR
- targetImplementationClass: LOCAL_EXACT
## 目标
Make the same minimal fixture produce observable operator:asset.clear_single data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.
## 输入与范围
- Fixture: `tests/files/web/generated/M16-GAP-00276-operator-asset.clear_single.blend`
- Generator: `tools/web/generated/M16-GAP-00276.py`
- Production: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Checker: `tools/web/check-generated-gap.mjs`
- Do: field read, desktop/WASM comparison, save/reopen, structured report.
- Do not: other gaps, Firefox/WebKit, or full editor behavior.
## 验收
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00276.py -- tests/files/web/generated/M16-GAP-00276-operator-asset.clear_single.blend
npm --prefix web run test:generated-gap -- --task M16-GAP-00276
node tools/web/check-generated-gap.mjs --task M16-GAP-00276
Malformed/unsupported, cancellation, duplicate, over-budget, or hash-drift cases must keep in_progress; they must not change Main revision or advance nextTask.
## 交付与回滚
- Reports: `tests/golden/M16-GAP-00276/`
- Status: `docs/status/M16-GAP-00276.md`
- Manifest: `tests/golden/M16-GAP-00276/manifest.json`
- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00276 --write`
- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.