From 46c9ebfcb6885aae8e71b9e5bc62eebccdf69aed Mon Sep 17 00:00:00 2001 From: mes123456 Date: Fri, 21 Aug 2026 21:09:40 -0400 Subject: [PATCH] Capture M16 gap execution artifacts --- .../web_engine/web_engine_blend_reader.cpp | 163 +- docs/EXECUTION_QUEUE.md | 8 +- docs/status/M16-GAP-00139.md | 17 + docs/status/M16-GAP-00140.md | 17 + docs/status/M16-GAP-00141.md | 17 + docs/status/M16-GAP-00142.md | 17 + docs/status/M16-GAP-00143.md | 17 + docs/status/M16-GAP-00144.md | 17 + docs/status/M16-GAP-00145.md | 17 + docs/status/M16-GAP-00146.md | 18 + docs/status/M16-GAP-00147.md | 17 + docs/status/M16-GAP-00148.md | 17 + docs/status/M16-GAP-00149.md | 17 + docs/status/M16-GAP-00150.md | 17 + docs/status/M16-GAP-00151.md | 17 + docs/status/M16-GAP-00152.md | 17 + docs/status/M16-GAP-00153.md | 17 + docs/status/M16-GAP-00154.md | 17 + docs/status/M16-GAP-00155.md | 17 + docs/status/M16-GAP-00156.md | 17 + docs/status/M16-GAP-00157.md | 17 + docs/status/M16-GAP-00158.md | 17 + docs/status/M16-GAP-00159.md | 17 + docs/status/M16-GAP-00160.md | 17 + docs/status/M16-GAP-00161.md | 17 + docs/status/M16-GAP-00162.md | 17 + docs/status/M16-GAP-00163.md | 17 + docs/status/M16-GAP-00164.md | 18 + docs/status/M16-GAP-00165.md | 18 + docs/status/M16-GAP-00166.md | 18 + docs/status/M16-GAP-00167.md | 18 + docs/status/M16-GAP-00168.md | 18 + docs/status/M16-GAP-00169.md | 18 + docs/status/M16-GAP-00170.md | 18 + docs/status/M16-GAP-00171.md | 17 + docs/status/M16-GAP-00172.md | 17 + docs/status/M16-GAP-00173.md | 18 + docs/status/M16-GAP-00174.md | 18 + docs/tasks/M16-GAP-00140.md | 37 + docs/tasks/M16-GAP-00141.md | 37 + docs/tasks/M16-GAP-00142.md | 37 + docs/tasks/M16-GAP-00143.md | 37 + docs/tasks/M16-GAP-00144.md | 37 + docs/tasks/M16-GAP-00145.md | 37 + docs/tasks/M16-GAP-00146.md | 37 + docs/tasks/M16-GAP-00147.md | 37 + docs/tasks/M16-GAP-00148.md | 37 + docs/tasks/M16-GAP-00149.md | 37 + docs/tasks/M16-GAP-00150.md | 37 + docs/tasks/M16-GAP-00151.md | 37 + docs/tasks/M16-GAP-00152.md | 37 + docs/tasks/M16-GAP-00153.md | 37 + docs/tasks/M16-GAP-00154.md | 37 + docs/tasks/M16-GAP-00155.md | 37 + docs/tasks/M16-GAP-00156.md | 37 + docs/tasks/M16-GAP-00157.md | 37 + docs/tasks/M16-GAP-00158.md | 37 + docs/tasks/M16-GAP-00159.md | 37 + docs/tasks/M16-GAP-00160.md | 37 + docs/tasks/M16-GAP-00161.md | 37 + docs/tasks/M16-GAP-00162.md | 37 + docs/tasks/M16-GAP-00163.md | 37 + docs/tasks/M16-GAP-00164.md | 37 + docs/tasks/M16-GAP-00165.md | 37 + docs/tasks/M16-GAP-00166.md | 37 + docs/tasks/M16-GAP-00167.md | 37 + docs/tasks/M16-GAP-00168.md | 37 + docs/tasks/M16-GAP-00169.md | 37 + docs/tasks/M16-GAP-00170.md | 37 + docs/tasks/M16-GAP-00171.md | 37 + docs/tasks/M16-GAP-00172.md | 37 + docs/tasks/M16-GAP-00173.md | 37 + docs/tasks/M16-GAP-00174.md | 37 + ...139-operator-action.select_leftright.blend | Bin 0 -> 86867 bytes ...AP-00140-operator-action.select_less.blend | Bin 0 -> 86865 bytes ...-00141-operator-action.select_linked.blend | Bin 0 -> 86861 bytes ...AP-00142-operator-action.select_more.blend | Bin 0 -> 86855 bytes .../M16-GAP-00143-operator-action.snap.blend | Bin 0 -> 86847 bytes .../M16-GAP-00144-operator-action.stash.blend | Bin 0 -> 86955 bytes ...145-operator-action.stash_and_create.blend | Bin 0 -> 87002 bytes ...M16-GAP-00146-operator-action.unlink.blend | Bin 0 -> 86881 bytes ...6-GAP-00147-operator-action.view_all.blend | Bin 0 -> 86846 bytes ...GAP-00148-operator-action.view_frame.blend | Bin 0 -> 87098 bytes ...-00149-operator-action.view_selected.blend | Bin 0 -> 87111 bytes ...GAP-00150-operator-anim.change_frame.blend | Bin 0 -> 87111 bytes ...51-operator-anim.channel_select_keys.blend | Bin 0 -> 87099 bytes ...0152-operator-anim.channel_view_pick.blend | Bin 0 -> 87117 bytes ...AP-00153-operator-anim.channels_bake.blend | Bin 0 -> 87182 bytes ...4-operator-anim.channels_clean_empty.blend | Bin 0 -> 87446 bytes ...P-00155-operator-anim.channels_click.blend | Bin 0 -> 87124 bytes ...0156-operator-anim.channels_collapse.blend | Bin 0 -> 87090 bytes ...-00157-operator-anim.channels_delete.blend | Bin 0 -> 86834 bytes ...erator-anim.channels_editable_toggle.blend | Bin 0 -> 87112 bytes ...-00159-operator-anim.channels_expand.blend | Bin 0 -> 87114 bytes ...perator-anim.channels_fcurves_enable.blend | Bin 0 -> 87103 bytes ...P-00161-operator-anim.channels_group.blend | Bin 0 -> 87091 bytes ...AP-00162-operator-anim.channels_move.blend | Bin 0 -> 87080 bytes ...-00163-operator-anim.channels_rename.blend | Bin 0 -> 87123 bytes ...64-operator-anim.channels_select_all.blend | Bin 0 -> 87114 bytes ...65-operator-anim.channels_select_box.blend | Bin 0 -> 87102 bytes ...operator-anim.channels_select_filter.blend | Bin 0 -> 87110 bytes ...erator-anim.channels_setting_disable.blend | Bin 0 -> 87116 bytes ...perator-anim.channels_setting_enable.blend | Bin 0 -> 87113 bytes ...perator-anim.channels_setting_toggle.blend | Bin 0 -> 87107 bytes ...00170-operator-anim.channels_ungroup.blend | Bin 0 -> 87064 bytes ...operator-anim.channels_view_selected.blend | Bin 0 -> 87134 bytes ...-operator-anim.clear_useless_actions.blend | Bin 0 -> 87523 bytes ...173-operator-anim.copy_driver_button.blend | Bin 0 -> 86616 bytes ...0174-operator-anim.driver_button_add.blend | Bin 0 -> 86415 bytes tests/golden/M15-03A/completed-gap-tasks.json | 36 +- tests/golden/M15-03A/next-task-plan.json | 80 +- tests/golden/M15-03A/task-catalog.jsonl | 72 +- tests/golden/M15-03A/task-index.json | 2 +- ...ction-select-leftright-desktop-report.json | 61 + ...n-select-leftright-local-exact-report.json | 42 + tests/golden/M16-GAP-00139/manifest.json | 25 + tests/golden/M16-GAP-00139/task-context.json | 185 +++ .../action-select-less-desktop-report.json | 57 + ...action-select-less-local-exact-report.json | 35 + tests/golden/M16-GAP-00140/manifest.json | 25 + tests/golden/M16-GAP-00140/task-context.json | 185 +++ .../action-select-linked-desktop-report.json | 62 + ...tion-select-linked-local-exact-report.json | 46 + tests/golden/M16-GAP-00141/manifest.json | 25 + tests/golden/M16-GAP-00141/task-context.json | 185 +++ .../action-select-more-desktop-report.json | 74 + ...action-select-more-local-exact-report.json | 41 + tests/golden/M16-GAP-00142/manifest.json | 25 + tests/golden/M16-GAP-00142/task-context.json | 185 +++ .../action-snap-desktop-report.json | 58 + .../action-snap-local-exact-report.json | 53 + tests/golden/M16-GAP-00143/manifest.json | 25 + tests/golden/M16-GAP-00143/task-context.json | 185 +++ .../action-stash-desktop-report.json | 25 + .../action-stash-local-exact-report.json | 56 + tests/golden/M16-GAP-00144/manifest.json | 25 + tests/golden/M16-GAP-00144/task-context.json | 185 +++ ...ction-stash-and-create-desktop-report.json | 25 + ...n-stash-and-create-local-exact-report.json | 57 + tests/golden/M16-GAP-00145/manifest.json | 25 + tests/golden/M16-GAP-00145/task-context.json | 185 +++ .../action-unlink-desktop-report.json | 46 + .../action-unlink-local-exact-report.json | 30 + tests/golden/M16-GAP-00146/manifest.json | 25 + tests/golden/M16-GAP-00146/task-context.json | 185 +++ .../action-view-all-desktop-report.json | 27 + .../action-view-all-local-exact-report.json | 38 + tests/golden/M16-GAP-00147/manifest.json | 25 + tests/golden/M16-GAP-00147/task-context.json | 185 +++ .../action-view-frame-desktop-report.json | 28 + .../action-view-frame-local-exact-report.json | 39 + tests/golden/M16-GAP-00148/manifest.json | 25 + tests/golden/M16-GAP-00148/task-context.json | 185 +++ .../action-view-selected-desktop-report.json | 71 + ...tion-view-selected-local-exact-report.json | 49 + tests/golden/M16-GAP-00149/manifest.json | 25 + tests/golden/M16-GAP-00149/task-context.json | 185 +++ .../anim-change-frame-desktop-report.json | 58 + .../anim-change-frame-local-exact-report.json | 41 + tests/golden/M16-GAP-00150/manifest.json | 25 + tests/golden/M16-GAP-00150/task-context.json | 185 +++ ...im-channel-select-keys-desktop-report.json | 60 + ...hannel-select-keys-local-exact-report.json | 36 + tests/golden/M16-GAP-00151/manifest.json | 25 + tests/golden/M16-GAP-00151/task-context.json | 185 +++ ...anim-channel-view-pick-desktop-report.json | 55 + ...-channel-view-pick-local-exact-report.json | 39 + tests/golden/M16-GAP-00152/manifest.json | 25 + tests/golden/M16-GAP-00152/task-context.json | 185 +++ .../anim-channels-bake-desktop-report.json | 52 + ...anim-channels-bake-local-exact-report.json | 51 + tests/golden/M16-GAP-00153/manifest.json | 25 + tests/golden/M16-GAP-00153/task-context.json | 185 +++ ...m-channels-clean-empty-desktop-report.json | 42 + ...annels-clean-empty-local-exact-report.json | 41 + tests/golden/M16-GAP-00154/manifest.json | 25 + tests/golden/M16-GAP-00154/task-context.json | 185 +++ .../anim-channels-click-desktop-report.json | 60 + ...nim-channels-click-local-exact-report.json | 36 + tests/golden/M16-GAP-00155/manifest.json | 25 + tests/golden/M16-GAP-00155/task-context.json | 185 +++ ...anim-channels-collapse-desktop-report.json | 42 + ...-channels-collapse-local-exact-report.json | 41 + tests/golden/M16-GAP-00156/manifest.json | 25 + tests/golden/M16-GAP-00156/task-context.json | 185 +++ .../anim-channels-delete-desktop-report.json | 18 + ...im-channels-delete-local-exact-report.json | 28 + tests/golden/M16-GAP-00157/manifest.json | 25 + tests/golden/M16-GAP-00157/task-context.json | 185 +++ ...annels-editable-toggle-desktop-report.json | 45 + ...ls-editable-toggle-local-exact-report.json | 29 + tests/golden/M16-GAP-00158/manifest.json | 26 + tests/golden/M16-GAP-00158/task-context.json | 185 +++ .../anim-channels-expand-desktop-report.json | 51 + ...im-channels-expand-local-exact-report.json | 28 + tests/golden/M16-GAP-00159/manifest.json | 26 + tests/golden/M16-GAP-00159/task-context.json | 185 +++ ...hannels-fcurves-enable-desktop-report.json | 45 + ...els-fcurves-enable-local-exact-report.json | 29 + tests/golden/M16-GAP-00160/manifest.json | 69 + tests/golden/M16-GAP-00160/task-context.json | 185 +++ .../anim-channels-group-desktop-report.json | 48 + ...nim-channels-group-local-exact-report.json | 26 + tests/golden/M16-GAP-00161/manifest.json | 69 + tests/golden/M16-GAP-00161/task-context.json | 182 +++ .../anim-channels-move-desktop-report.json | 42 + ...anim-channels-move-local-exact-report.json | 29 + tests/golden/M16-GAP-00162/manifest.json | 69 + tests/golden/M16-GAP-00162/task-context.json | 182 +++ .../anim-channels-rename-desktop-report.json | 49 + ...im-channels-rename-local-exact-report.json | 28 + tests/golden/M16-GAP-00163/manifest.json | 69 + tests/golden/M16-GAP-00163/task-context.json | 182 +++ ...im-channels-select-all-desktop-report.json | 60 + ...hannels-select-all-local-exact-report.json | 26 + tests/golden/M16-GAP-00164/manifest.json | 69 + tests/golden/M16-GAP-00164/task-context.json | 182 +++ ...im-channels-select-box-desktop-report.json | 61 + ...hannels-select-box-local-exact-report.json | 26 + tests/golden/M16-GAP-00165/manifest.json | 69 + tests/golden/M16-GAP-00165/task-context.json | 182 +++ ...channels-select-filter-desktop-report.json | 42 + ...nels-select-filter-local-exact-report.json | 26 + tests/golden/M16-GAP-00166/manifest.json | 73 + tests/golden/M16-GAP-00166/task-context.json | 182 +++ ...annels-setting-disable-desktop-report.json | 46 + ...ls-setting-disable-local-exact-report.json | 30 + tests/golden/M16-GAP-00167/manifest.json | 73 + tests/golden/M16-GAP-00167/task-context.json | 182 +++ ...hannels-setting-enable-desktop-report.json | 46 + ...els-setting-enable-local-exact-report.json | 30 + tests/golden/M16-GAP-00168/manifest.json | 73 + tests/golden/M16-GAP-00168/task-context.json | 182 +++ ...hannels-setting-toggle-desktop-report.json | 46 + ...els-setting-toggle-local-exact-report.json | 30 + tests/golden/M16-GAP-00169/manifest.json | 73 + tests/golden/M16-GAP-00169/task-context.json | 182 +++ .../anim-channels-ungroup-desktop-report.json | 47 + ...m-channels-ungroup-local-exact-report.json | 30 + tests/golden/M16-GAP-00170/manifest.json | 73 + tests/golden/M16-GAP-00170/task-context.json | 182 +++ ...channels-view-selected-desktop-report.json | 59 + ...nels-view-selected-local-exact-report.json | 43 + tests/golden/M16-GAP-00171/manifest.json | 73 + tests/golden/M16-GAP-00171/task-context.json | 182 +++ ...-clear-useless-actions-desktop-report.json | 81 + ...ar-useless-actions-local-exact-report.json | 31 + tests/golden/M16-GAP-00172/manifest.json | 73 + tests/golden/M16-GAP-00172/task-context.json | 185 +++ ...nim-copy-driver-button-desktop-report.json | 21 + ...copy-driver-button-local-exact-report.json | 39 + tests/golden/M16-GAP-00173/manifest.json | 73 + tests/golden/M16-GAP-00173/task-context.json | 185 +++ ...anim-driver-button-add-desktop-report.json | 14 + ...-driver-button-add-local-exact-report.json | 27 + tests/golden/M16-GAP-00174/manifest.json | 73 + tests/golden/M16-GAP-00174/task-context.json | 185 +++ .../web/check-action-change-frame-desktop.py | 72 + ...heck-action-channel-select-keys-desktop.py | 69 + .../check-action-channel-view-pick-desktop.py | 104 ++ .../web/check-action-channels-bake-desktop.py | 69 + ...eck-action-channels-clean-empty-desktop.py | 78 + .../check-action-channels-click-desktop.py | 69 + .../check-action-channels-collapse-desktop.py | 68 + .../check-action-channels-delete-desktop.py | 68 + ...action-channels-editable-toggle-desktop.py | 71 + .../check-action-channels-expand-desktop.py | 74 + ...-action-channels-fcurves-enable-desktop.py | 71 + .../check-action-channels-group-desktop.py | 73 + .../web/check-action-channels-move-desktop.py | 69 + .../check-action-channels-rename-desktop.py | 81 + ...heck-action-channels-select-all-desktop.py | 80 + ...heck-action-channels-select-box-desktop.py | 82 + ...k-action-channels-select-filter-desktop.py | 84 + ...action-channels-setting-disable-desktop.py | 73 + ...-action-channels-setting-enable-desktop.py | 73 + ...-action-channels-setting-toggle-desktop.py | 73 + .../check-action-channels-ungroup-desktop.py | 75 + ...k-action-channels-view-selected-desktop.py | 111 ++ ...ck-action-clear-useless-actions-desktop.py | 90 ++ ...check-action-copy-driver-button-desktop.py | 99 ++ .../check-action-driver-button-add-desktop.py | 98 ++ .../check-action-select-leftright-desktop.py | 71 + tools/web/check-action-select-less-desktop.py | 70 + .../web/check-action-select-linked-desktop.py | 70 + tools/web/check-action-select-more-desktop.py | 70 + tools/web/check-action-snap-desktop.py | 71 + .../check-action-stash-and-create-desktop.py | 40 + tools/web/check-action-stash-desktop.py | 65 + tools/web/check-action-unlink-desktop.py | 80 + tools/web/check-action-view-all-desktop.py | 81 + tools/web/check-action-view-frame-desktop.py | 91 ++ .../web/check-action-view-selected-desktop.py | 113 ++ tools/web/check-generated-gap.mjs | 1419 +++++++++++++++++ tools/web/check-task-context.mjs | 2 +- tools/web/generated/M16-GAP-00139.py | 54 + tools/web/generated/M16-GAP-00140.py | 50 + tools/web/generated/M16-GAP-00141.py | 53 + tools/web/generated/M16-GAP-00142.py | 53 + tools/web/generated/M16-GAP-00143.py | 54 + tools/web/generated/M16-GAP-00144.py | 46 + tools/web/generated/M16-GAP-00145.py | 46 + tools/web/generated/M16-GAP-00146.py | 48 + tools/web/generated/M16-GAP-00147.py | 50 + tools/web/generated/M16-GAP-00148.py | 54 + tools/web/generated/M16-GAP-00149.py | 60 + tools/web/generated/M16-GAP-00150.py | 53 + tools/web/generated/M16-GAP-00151.py | 66 + tools/web/generated/M16-GAP-00152.py | 58 + tools/web/generated/M16-GAP-00153.py | 58 + tools/web/generated/M16-GAP-00154.py | 69 + tools/web/generated/M16-GAP-00155.py | 71 + tools/web/generated/M16-GAP-00156.py | 52 + tools/web/generated/M16-GAP-00157.py | 60 + tools/web/generated/M16-GAP-00158.py | 68 + tools/web/generated/M16-GAP-00159.py | 61 + tools/web/generated/M16-GAP-00160.py | 73 + tools/web/generated/M16-GAP-00161.py | 65 + tools/web/generated/M16-GAP-00162.py | 78 + tools/web/generated/M16-GAP-00163.py | 90 ++ tools/web/generated/M16-GAP-00164.py | 70 + tools/web/generated/M16-GAP-00165.py | 90 ++ tools/web/generated/M16-GAP-00166.py | 55 + tools/web/generated/M16-GAP-00167.py | 72 + tools/web/generated/M16-GAP-00168.py | 69 + tools/web/generated/M16-GAP-00169.py | 69 + tools/web/generated/M16-GAP-00170.py | 77 + tools/web/generated/M16-GAP-00171.py | 77 + tools/web/generated/M16-GAP-00172.py | 67 + tools/web/generated/M16-GAP-00173.py | 36 + tools/web/generated/M16-GAP-00174.py | 30 + web/app/public/vendor/blender/web_engine.wasm | Bin 15560772 -> 15584977 bytes web/app/src/vendor/blender/web_engine.wasm | Bin 15560772 -> 15584977 bytes web/protocol/editor-workflow.ts | 6 +- web/protocol/scene-ir.ts | 2 +- web/protocol/streaming-consumer.ts | 89 +- web/tests/unit/context-governance.test.mjs | 7 + web/tests/unit/streaming-resilience.test.mjs | 71 + web/tests/unit/task-context.test.mjs | 9 +- 339 files changed, 20028 insertions(+), 108 deletions(-) create mode 100644 docs/status/M16-GAP-00139.md create mode 100644 docs/status/M16-GAP-00140.md create mode 100644 docs/status/M16-GAP-00141.md create mode 100644 docs/status/M16-GAP-00142.md create mode 100644 docs/status/M16-GAP-00143.md create mode 100644 docs/status/M16-GAP-00144.md create mode 100644 docs/status/M16-GAP-00145.md create mode 100644 docs/status/M16-GAP-00146.md create mode 100644 docs/status/M16-GAP-00147.md create mode 100644 docs/status/M16-GAP-00148.md create mode 100644 docs/status/M16-GAP-00149.md create mode 100644 docs/status/M16-GAP-00150.md create mode 100644 docs/status/M16-GAP-00151.md create mode 100644 docs/status/M16-GAP-00152.md create mode 100644 docs/status/M16-GAP-00153.md create mode 100644 docs/status/M16-GAP-00154.md create mode 100644 docs/status/M16-GAP-00155.md create mode 100644 docs/status/M16-GAP-00156.md create mode 100644 docs/status/M16-GAP-00157.md create mode 100644 docs/status/M16-GAP-00158.md create mode 100644 docs/status/M16-GAP-00159.md create mode 100644 docs/status/M16-GAP-00160.md create mode 100644 docs/status/M16-GAP-00161.md create mode 100644 docs/status/M16-GAP-00162.md create mode 100644 docs/status/M16-GAP-00163.md create mode 100644 docs/status/M16-GAP-00164.md create mode 100644 docs/status/M16-GAP-00165.md create mode 100644 docs/status/M16-GAP-00166.md create mode 100644 docs/status/M16-GAP-00167.md create mode 100644 docs/status/M16-GAP-00168.md create mode 100644 docs/status/M16-GAP-00169.md create mode 100644 docs/status/M16-GAP-00170.md create mode 100644 docs/status/M16-GAP-00171.md create mode 100644 docs/status/M16-GAP-00172.md create mode 100644 docs/status/M16-GAP-00173.md create mode 100644 docs/status/M16-GAP-00174.md create mode 100644 docs/tasks/M16-GAP-00140.md create mode 100644 docs/tasks/M16-GAP-00141.md create mode 100644 docs/tasks/M16-GAP-00142.md create mode 100644 docs/tasks/M16-GAP-00143.md create mode 100644 docs/tasks/M16-GAP-00144.md create mode 100644 docs/tasks/M16-GAP-00145.md create mode 100644 docs/tasks/M16-GAP-00146.md create mode 100644 docs/tasks/M16-GAP-00147.md create mode 100644 docs/tasks/M16-GAP-00148.md create mode 100644 docs/tasks/M16-GAP-00149.md create mode 100644 docs/tasks/M16-GAP-00150.md create mode 100644 docs/tasks/M16-GAP-00151.md create mode 100644 docs/tasks/M16-GAP-00152.md create mode 100644 docs/tasks/M16-GAP-00153.md create mode 100644 docs/tasks/M16-GAP-00154.md create mode 100644 docs/tasks/M16-GAP-00155.md create mode 100644 docs/tasks/M16-GAP-00156.md create mode 100644 docs/tasks/M16-GAP-00157.md create mode 100644 docs/tasks/M16-GAP-00158.md create mode 100644 docs/tasks/M16-GAP-00159.md create mode 100644 docs/tasks/M16-GAP-00160.md create mode 100644 docs/tasks/M16-GAP-00161.md create mode 100644 docs/tasks/M16-GAP-00162.md create mode 100644 docs/tasks/M16-GAP-00163.md create mode 100644 docs/tasks/M16-GAP-00164.md create mode 100644 docs/tasks/M16-GAP-00165.md create mode 100644 docs/tasks/M16-GAP-00166.md create mode 100644 docs/tasks/M16-GAP-00167.md create mode 100644 docs/tasks/M16-GAP-00168.md create mode 100644 docs/tasks/M16-GAP-00169.md create mode 100644 docs/tasks/M16-GAP-00170.md create mode 100644 docs/tasks/M16-GAP-00171.md create mode 100644 docs/tasks/M16-GAP-00172.md create mode 100644 docs/tasks/M16-GAP-00173.md create mode 100644 docs/tasks/M16-GAP-00174.md create mode 100644 tests/files/web/generated/M16-GAP-00139-operator-action.select_leftright.blend create mode 100644 tests/files/web/generated/M16-GAP-00140-operator-action.select_less.blend create mode 100644 tests/files/web/generated/M16-GAP-00141-operator-action.select_linked.blend create mode 100644 tests/files/web/generated/M16-GAP-00142-operator-action.select_more.blend create mode 100644 tests/files/web/generated/M16-GAP-00143-operator-action.snap.blend create mode 100644 tests/files/web/generated/M16-GAP-00144-operator-action.stash.blend create mode 100644 tests/files/web/generated/M16-GAP-00145-operator-action.stash_and_create.blend create mode 100644 tests/files/web/generated/M16-GAP-00146-operator-action.unlink.blend create mode 100644 tests/files/web/generated/M16-GAP-00147-operator-action.view_all.blend create mode 100644 tests/files/web/generated/M16-GAP-00148-operator-action.view_frame.blend create mode 100644 tests/files/web/generated/M16-GAP-00149-operator-action.view_selected.blend create mode 100644 tests/files/web/generated/M16-GAP-00150-operator-anim.change_frame.blend create mode 100644 tests/files/web/generated/M16-GAP-00151-operator-anim.channel_select_keys.blend create mode 100644 tests/files/web/generated/M16-GAP-00152-operator-anim.channel_view_pick.blend create mode 100644 tests/files/web/generated/M16-GAP-00153-operator-anim.channels_bake.blend create mode 100644 tests/files/web/generated/M16-GAP-00154-operator-anim.channels_clean_empty.blend create mode 100644 tests/files/web/generated/M16-GAP-00155-operator-anim.channels_click.blend create mode 100644 tests/files/web/generated/M16-GAP-00156-operator-anim.channels_collapse.blend create mode 100644 tests/files/web/generated/M16-GAP-00157-operator-anim.channels_delete.blend create mode 100644 tests/files/web/generated/M16-GAP-00158-operator-anim.channels_editable_toggle.blend create mode 100644 tests/files/web/generated/M16-GAP-00159-operator-anim.channels_expand.blend create mode 100644 tests/files/web/generated/M16-GAP-00160-operator-anim.channels_fcurves_enable.blend create mode 100644 tests/files/web/generated/M16-GAP-00161-operator-anim.channels_group.blend create mode 100644 tests/files/web/generated/M16-GAP-00162-operator-anim.channels_move.blend create mode 100644 tests/files/web/generated/M16-GAP-00163-operator-anim.channels_rename.blend create mode 100644 tests/files/web/generated/M16-GAP-00164-operator-anim.channels_select_all.blend create mode 100644 tests/files/web/generated/M16-GAP-00165-operator-anim.channels_select_box.blend create mode 100644 tests/files/web/generated/M16-GAP-00166-operator-anim.channels_select_filter.blend create mode 100644 tests/files/web/generated/M16-GAP-00167-operator-anim.channels_setting_disable.blend create mode 100644 tests/files/web/generated/M16-GAP-00168-operator-anim.channels_setting_enable.blend create mode 100644 tests/files/web/generated/M16-GAP-00169-operator-anim.channels_setting_toggle.blend create mode 100644 tests/files/web/generated/M16-GAP-00170-operator-anim.channels_ungroup.blend create mode 100644 tests/files/web/generated/M16-GAP-00171-operator-anim.channels_view_selected.blend create mode 100644 tests/files/web/generated/M16-GAP-00172-operator-anim.clear_useless_actions.blend create mode 100644 tests/files/web/generated/M16-GAP-00173-operator-anim.copy_driver_button.blend create mode 100644 tests/files/web/generated/M16-GAP-00174-operator-anim.driver_button_add.blend create mode 100644 tests/golden/M16-GAP-00139/action-select-leftright-desktop-report.json create mode 100644 tests/golden/M16-GAP-00139/action-select-leftright-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00139/manifest.json create mode 100644 tests/golden/M16-GAP-00139/task-context.json create mode 100644 tests/golden/M16-GAP-00140/action-select-less-desktop-report.json create mode 100644 tests/golden/M16-GAP-00140/action-select-less-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00140/manifest.json create mode 100644 tests/golden/M16-GAP-00140/task-context.json create mode 100644 tests/golden/M16-GAP-00141/action-select-linked-desktop-report.json create mode 100644 tests/golden/M16-GAP-00141/action-select-linked-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00141/manifest.json create mode 100644 tests/golden/M16-GAP-00141/task-context.json create mode 100644 tests/golden/M16-GAP-00142/action-select-more-desktop-report.json create mode 100644 tests/golden/M16-GAP-00142/action-select-more-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00142/manifest.json create mode 100644 tests/golden/M16-GAP-00142/task-context.json create mode 100644 tests/golden/M16-GAP-00143/action-snap-desktop-report.json create mode 100644 tests/golden/M16-GAP-00143/action-snap-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00143/manifest.json create mode 100644 tests/golden/M16-GAP-00143/task-context.json create mode 100644 tests/golden/M16-GAP-00144/action-stash-desktop-report.json create mode 100644 tests/golden/M16-GAP-00144/action-stash-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00144/manifest.json create mode 100644 tests/golden/M16-GAP-00144/task-context.json create mode 100644 tests/golden/M16-GAP-00145/action-stash-and-create-desktop-report.json create mode 100644 tests/golden/M16-GAP-00145/action-stash-and-create-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00145/manifest.json create mode 100644 tests/golden/M16-GAP-00145/task-context.json create mode 100644 tests/golden/M16-GAP-00146/action-unlink-desktop-report.json create mode 100644 tests/golden/M16-GAP-00146/action-unlink-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00146/manifest.json create mode 100644 tests/golden/M16-GAP-00146/task-context.json create mode 100644 tests/golden/M16-GAP-00147/action-view-all-desktop-report.json create mode 100644 tests/golden/M16-GAP-00147/action-view-all-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00147/manifest.json create mode 100644 tests/golden/M16-GAP-00147/task-context.json create mode 100644 tests/golden/M16-GAP-00148/action-view-frame-desktop-report.json create mode 100644 tests/golden/M16-GAP-00148/action-view-frame-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00148/manifest.json create mode 100644 tests/golden/M16-GAP-00148/task-context.json create mode 100644 tests/golden/M16-GAP-00149/action-view-selected-desktop-report.json create mode 100644 tests/golden/M16-GAP-00149/action-view-selected-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00149/manifest.json create mode 100644 tests/golden/M16-GAP-00149/task-context.json create mode 100644 tests/golden/M16-GAP-00150/anim-change-frame-desktop-report.json create mode 100644 tests/golden/M16-GAP-00150/anim-change-frame-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00150/manifest.json create mode 100644 tests/golden/M16-GAP-00150/task-context.json create mode 100644 tests/golden/M16-GAP-00151/anim-channel-select-keys-desktop-report.json create mode 100644 tests/golden/M16-GAP-00151/anim-channel-select-keys-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00151/manifest.json create mode 100644 tests/golden/M16-GAP-00151/task-context.json create mode 100644 tests/golden/M16-GAP-00152/anim-channel-view-pick-desktop-report.json create mode 100644 tests/golden/M16-GAP-00152/anim-channel-view-pick-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00152/manifest.json create mode 100644 tests/golden/M16-GAP-00152/task-context.json create mode 100644 tests/golden/M16-GAP-00153/anim-channels-bake-desktop-report.json create mode 100644 tests/golden/M16-GAP-00153/anim-channels-bake-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00153/manifest.json create mode 100644 tests/golden/M16-GAP-00153/task-context.json create mode 100644 tests/golden/M16-GAP-00154/anim-channels-clean-empty-desktop-report.json create mode 100644 tests/golden/M16-GAP-00154/anim-channels-clean-empty-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00154/manifest.json create mode 100644 tests/golden/M16-GAP-00154/task-context.json create mode 100644 tests/golden/M16-GAP-00155/anim-channels-click-desktop-report.json create mode 100644 tests/golden/M16-GAP-00155/anim-channels-click-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00155/manifest.json create mode 100644 tests/golden/M16-GAP-00155/task-context.json create mode 100644 tests/golden/M16-GAP-00156/anim-channels-collapse-desktop-report.json create mode 100644 tests/golden/M16-GAP-00156/anim-channels-collapse-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00156/manifest.json create mode 100644 tests/golden/M16-GAP-00156/task-context.json create mode 100644 tests/golden/M16-GAP-00157/anim-channels-delete-desktop-report.json create mode 100644 tests/golden/M16-GAP-00157/anim-channels-delete-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00157/manifest.json create mode 100644 tests/golden/M16-GAP-00157/task-context.json create mode 100644 tests/golden/M16-GAP-00158/anim-channels-editable-toggle-desktop-report.json create mode 100644 tests/golden/M16-GAP-00158/anim-channels-editable-toggle-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00158/manifest.json create mode 100644 tests/golden/M16-GAP-00158/task-context.json create mode 100644 tests/golden/M16-GAP-00159/anim-channels-expand-desktop-report.json create mode 100644 tests/golden/M16-GAP-00159/anim-channels-expand-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00159/manifest.json create mode 100644 tests/golden/M16-GAP-00159/task-context.json create mode 100644 tests/golden/M16-GAP-00160/anim-channels-fcurves-enable-desktop-report.json create mode 100644 tests/golden/M16-GAP-00160/anim-channels-fcurves-enable-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00160/manifest.json create mode 100644 tests/golden/M16-GAP-00160/task-context.json create mode 100644 tests/golden/M16-GAP-00161/anim-channels-group-desktop-report.json create mode 100644 tests/golden/M16-GAP-00161/anim-channels-group-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00161/manifest.json create mode 100644 tests/golden/M16-GAP-00161/task-context.json create mode 100644 tests/golden/M16-GAP-00162/anim-channels-move-desktop-report.json create mode 100644 tests/golden/M16-GAP-00162/anim-channels-move-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00162/manifest.json create mode 100644 tests/golden/M16-GAP-00162/task-context.json create mode 100644 tests/golden/M16-GAP-00163/anim-channels-rename-desktop-report.json create mode 100644 tests/golden/M16-GAP-00163/anim-channels-rename-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00163/manifest.json create mode 100644 tests/golden/M16-GAP-00163/task-context.json create mode 100644 tests/golden/M16-GAP-00164/anim-channels-select-all-desktop-report.json create mode 100644 tests/golden/M16-GAP-00164/anim-channels-select-all-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00164/manifest.json create mode 100644 tests/golden/M16-GAP-00164/task-context.json create mode 100644 tests/golden/M16-GAP-00165/anim-channels-select-box-desktop-report.json create mode 100644 tests/golden/M16-GAP-00165/anim-channels-select-box-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00165/manifest.json create mode 100644 tests/golden/M16-GAP-00165/task-context.json create mode 100644 tests/golden/M16-GAP-00166/anim-channels-select-filter-desktop-report.json create mode 100644 tests/golden/M16-GAP-00166/anim-channels-select-filter-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00166/manifest.json create mode 100644 tests/golden/M16-GAP-00166/task-context.json create mode 100644 tests/golden/M16-GAP-00167/anim-channels-setting-disable-desktop-report.json create mode 100644 tests/golden/M16-GAP-00167/anim-channels-setting-disable-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00167/manifest.json create mode 100644 tests/golden/M16-GAP-00167/task-context.json create mode 100644 tests/golden/M16-GAP-00168/anim-channels-setting-enable-desktop-report.json create mode 100644 tests/golden/M16-GAP-00168/anim-channels-setting-enable-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00168/manifest.json create mode 100644 tests/golden/M16-GAP-00168/task-context.json create mode 100644 tests/golden/M16-GAP-00169/anim-channels-setting-toggle-desktop-report.json create mode 100644 tests/golden/M16-GAP-00169/anim-channels-setting-toggle-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00169/manifest.json create mode 100644 tests/golden/M16-GAP-00169/task-context.json create mode 100644 tests/golden/M16-GAP-00170/anim-channels-ungroup-desktop-report.json create mode 100644 tests/golden/M16-GAP-00170/anim-channels-ungroup-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00170/manifest.json create mode 100644 tests/golden/M16-GAP-00170/task-context.json create mode 100644 tests/golden/M16-GAP-00171/anim-channels-view-selected-desktop-report.json create mode 100644 tests/golden/M16-GAP-00171/anim-channels-view-selected-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00171/manifest.json create mode 100644 tests/golden/M16-GAP-00171/task-context.json create mode 100644 tests/golden/M16-GAP-00172/anim-clear-useless-actions-desktop-report.json create mode 100644 tests/golden/M16-GAP-00172/anim-clear-useless-actions-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00172/manifest.json create mode 100644 tests/golden/M16-GAP-00172/task-context.json create mode 100644 tests/golden/M16-GAP-00173/anim-copy-driver-button-desktop-report.json create mode 100644 tests/golden/M16-GAP-00173/anim-copy-driver-button-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00173/manifest.json create mode 100644 tests/golden/M16-GAP-00173/task-context.json create mode 100644 tests/golden/M16-GAP-00174/anim-driver-button-add-desktop-report.json create mode 100644 tests/golden/M16-GAP-00174/anim-driver-button-add-local-exact-report.json create mode 100644 tests/golden/M16-GAP-00174/manifest.json create mode 100644 tests/golden/M16-GAP-00174/task-context.json create mode 100644 tools/web/check-action-change-frame-desktop.py create mode 100644 tools/web/check-action-channel-select-keys-desktop.py create mode 100644 tools/web/check-action-channel-view-pick-desktop.py create mode 100644 tools/web/check-action-channels-bake-desktop.py create mode 100644 tools/web/check-action-channels-clean-empty-desktop.py create mode 100644 tools/web/check-action-channels-click-desktop.py create mode 100644 tools/web/check-action-channels-collapse-desktop.py create mode 100644 tools/web/check-action-channels-delete-desktop.py create mode 100644 tools/web/check-action-channels-editable-toggle-desktop.py create mode 100644 tools/web/check-action-channels-expand-desktop.py create mode 100644 tools/web/check-action-channels-fcurves-enable-desktop.py create mode 100644 tools/web/check-action-channels-group-desktop.py create mode 100644 tools/web/check-action-channels-move-desktop.py create mode 100644 tools/web/check-action-channels-rename-desktop.py create mode 100644 tools/web/check-action-channels-select-all-desktop.py create mode 100644 tools/web/check-action-channels-select-box-desktop.py create mode 100644 tools/web/check-action-channels-select-filter-desktop.py create mode 100644 tools/web/check-action-channels-setting-disable-desktop.py create mode 100644 tools/web/check-action-channels-setting-enable-desktop.py create mode 100644 tools/web/check-action-channels-setting-toggle-desktop.py create mode 100644 tools/web/check-action-channels-ungroup-desktop.py create mode 100644 tools/web/check-action-channels-view-selected-desktop.py create mode 100644 tools/web/check-action-clear-useless-actions-desktop.py create mode 100644 tools/web/check-action-copy-driver-button-desktop.py create mode 100644 tools/web/check-action-driver-button-add-desktop.py create mode 100644 tools/web/check-action-select-leftright-desktop.py create mode 100644 tools/web/check-action-select-less-desktop.py create mode 100644 tools/web/check-action-select-linked-desktop.py create mode 100644 tools/web/check-action-select-more-desktop.py create mode 100644 tools/web/check-action-snap-desktop.py create mode 100644 tools/web/check-action-stash-and-create-desktop.py create mode 100644 tools/web/check-action-stash-desktop.py create mode 100644 tools/web/check-action-unlink-desktop.py create mode 100644 tools/web/check-action-view-all-desktop.py create mode 100644 tools/web/check-action-view-frame-desktop.py create mode 100644 tools/web/check-action-view-selected-desktop.py create mode 100644 tools/web/generated/M16-GAP-00139.py create mode 100644 tools/web/generated/M16-GAP-00140.py create mode 100644 tools/web/generated/M16-GAP-00141.py create mode 100644 tools/web/generated/M16-GAP-00142.py create mode 100644 tools/web/generated/M16-GAP-00143.py create mode 100644 tools/web/generated/M16-GAP-00144.py create mode 100644 tools/web/generated/M16-GAP-00145.py create mode 100644 tools/web/generated/M16-GAP-00146.py create mode 100644 tools/web/generated/M16-GAP-00147.py create mode 100644 tools/web/generated/M16-GAP-00148.py create mode 100644 tools/web/generated/M16-GAP-00149.py create mode 100644 tools/web/generated/M16-GAP-00150.py create mode 100644 tools/web/generated/M16-GAP-00151.py create mode 100644 tools/web/generated/M16-GAP-00152.py create mode 100644 tools/web/generated/M16-GAP-00153.py create mode 100644 tools/web/generated/M16-GAP-00154.py create mode 100644 tools/web/generated/M16-GAP-00155.py create mode 100644 tools/web/generated/M16-GAP-00156.py create mode 100644 tools/web/generated/M16-GAP-00157.py create mode 100644 tools/web/generated/M16-GAP-00158.py create mode 100644 tools/web/generated/M16-GAP-00159.py create mode 100644 tools/web/generated/M16-GAP-00160.py create mode 100644 tools/web/generated/M16-GAP-00161.py create mode 100644 tools/web/generated/M16-GAP-00162.py create mode 100644 tools/web/generated/M16-GAP-00163.py create mode 100644 tools/web/generated/M16-GAP-00164.py create mode 100644 tools/web/generated/M16-GAP-00165.py create mode 100644 tools/web/generated/M16-GAP-00166.py create mode 100644 tools/web/generated/M16-GAP-00167.py create mode 100644 tools/web/generated/M16-GAP-00168.py create mode 100644 tools/web/generated/M16-GAP-00169.py create mode 100644 tools/web/generated/M16-GAP-00170.py create mode 100644 tools/web/generated/M16-GAP-00171.py create mode 100644 tools/web/generated/M16-GAP-00172.py create mode 100644 tools/web/generated/M16-GAP-00173.py create mode 100644 tools/web/generated/M16-GAP-00174.py diff --git a/blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp b/blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp index c33c7b1b..1f25699a 100644 --- a/blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp +++ b/blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp @@ -31,6 +31,7 @@ #include "BLO_core_file_reader.hh" #include "DNA_genfile.h" +#include "DNA_action_types.h" #include "DNA_anim_enums.h" #include "DNA_curve_enums.h" #include "DNA_lattice_types.h" @@ -549,6 +550,7 @@ std::string id_prefix(const std::string &type_name) if (type_name == "bSound") return "sound"; if (type_name == "Speaker") return "speaker"; if (type_name == "Tex") return "texture"; + if (type_name == "bAction" || type_name == "Action") return "action"; return "datablock"; } @@ -564,7 +566,8 @@ bool is_exported_id_type(const std::string &type_name) type_name == "VFont" || type_name == "Mask" || type_name == "Library" || type_name == "WorkSpace" || type_name == "bScreen" || type_name == "Brush" || type_name == "FreestyleLineStyle" || type_name == "Lattice" || - type_name == "ParticleSettings" || type_name == "bSound" || type_name == "Speaker" || type_name == "Tex"; + type_name == "ParticleSettings" || type_name == "bSound" || type_name == "Speaker" || type_name == "Tex" || + type_name == "bAction" || type_name == "Action"; } std::string unique_id(const std::string &prefix, @@ -1248,6 +1251,36 @@ const char *editor_region_kind(const int64_t region_type) return nullptr; } +std::optional editor_view2d_rect(const SDNA &sdna, + const ElementRef &view2d, + const std::string &member_name) +{ + const std::optional rect = embedded_element(sdna, view2d, member_name); + if (!rect) return std::nullopt; + const auto stable_float = [](const float value) { + return std::round(double(value) * 1000000.0) / 1000000.0; + }; + return json{{"xmin", stable_float(read_float(sdna, *rect, "xmin").value_or(0.0f))}, + {"xmax", stable_float(read_float(sdna, *rect, "xmax").value_or(0.0f))}, + {"ymin", stable_float(read_float(sdna, *rect, "ymin").value_or(0.0f))}, + {"ymax", stable_float(read_float(sdna, *rect, "ymax").value_or(0.0f))}}; +} + +std::optional editor_view2d_state(const SDNA &sdna, const ElementRef ®ion) +{ + const std::optional view2d = embedded_element(sdna, region, "v2d"); + if (!view2d) return std::nullopt; + const std::optional current = editor_view2d_rect(sdna, *view2d, "cur"); + const std::optional mask = embedded_element(sdna, *view2d, "mask"); + if (!current || !mask) return std::nullopt; + return json{{"cur", *current}, + {"mask", + {{"xmin", read_integer(sdna, *mask, "xmin").value_or(0)}, + {"xmax", read_integer(sdna, *mask, "xmax").value_or(0)}, + {"ymin", read_integer(sdna, *mask, "ymin").value_or(0)}, + {"ymax", read_integer(sdna, *mask, "ymax").value_or(0)}}}}; +} + std::optional editor_workflow_from_records( const ParsedBlend &blend, const std::vector &records, @@ -1328,10 +1361,16 @@ std::optional editor_workflow_from_records( break; } const int64_t flags = read_integer(*blend.sdna, region, "flag").value_or(0); - regions.push_back({{"id", record.id + ":area:" + std::to_string(area_index) + - ":region:" + std::to_string(regions.size())}, - {"kind", kind}, - {"visible", (flags & RGN_FLAG_HIDDEN) == 0}}); + json region_record = {{"id", record.id + ":area:" + std::to_string(area_index) + + ":region:" + std::to_string(regions.size())}, + {"kind", kind}, + {"visible", (flags & RGN_FLAG_HIDDEN) == 0}}; + if (std::strcmp(editor, "DOPE_SHEET") == 0 && std::strcmp(kind, "MAIN") == 0) { + if (const std::optional view2d = editor_view2d_state(*blend.sdna, region)) { + region_record["view2d"] = *view2d; + } + } + regions.push_back(std::move(region_record)); has_main_region |= std::strcmp(kind, "MAIN") == 0; } if (!valid || regions.empty() || !has_main_region) { @@ -1345,12 +1384,23 @@ std::optional editor_workflow_from_records( double(rect.x_max - rect.x_min) / screen_width; const double height = rect.y_max == screen_y_max ? 1.0 - y : double(rect.y_max - rect.y_min) / screen_height; - areas.push_back({{"id", record.id + ":area:" + std::to_string(area_index)}, - {"editor", editor}, - {"regions", std::move(regions)}, - {"rect", - {{"x", x}, {"y", y}, {"width", width}, {"height", height}}}, - {"maximized", false}}); + json area_record = {{"id", record.id + ":area:" + std::to_string(area_index)}, + {"editor", editor}, + {"regions", std::move(regions)}, + {"rect", + {{"x", x}, {"y", y}, {"width", width}, {"height", height}}}, + {"maximized", false}}; + if (std::strcmp(editor, "DOPE_SHEET") == 0) { + for (const ElementRef &space : linked_list_elements(blend, area, "spacedata")) { + if (space.type_name != "SpaceAction") continue; + if (const std::optional ads = embedded_element(*blend.sdna, space, "ads")) { + const std::string filter = read_string(*blend.sdna, *ads, "searchstr"); + if (!filter.empty()) area_record["filterText"] = filter; + } + break; + } + } + areas.push_back(std::move(area_record)); } if (!valid || areas.empty()) continue; area_count += areas.size(); @@ -2545,6 +2595,7 @@ json fcurve_channel(const ParsedBlend &blend, const ElementRef &fcurve) const std::optional path_pointer = read_pointer(*blend.sdna, fcurve, "rna_path"); const std::string path = path_pointer ? read_raw_string(blend, *path_pointer, 2048) : std::string(); const int64_t array_index = read_integer(*blend.sdna, fcurve, "array_index").value_or(-1); + const int64_t flags = read_integer(*blend.sdna, fcurve, "flag").value_or(0); const int64_t extrapolation = read_integer(*blend.sdna, fcurve, "extend").value_or(FCURVE_EXTRAPOLATE_CONSTANT); const std::string channel_path = path.empty() || array_index < 0 ? path : @@ -2614,12 +2665,74 @@ json fcurve_channel(const ParsedBlend &blend, const ElementRef &fcurve) if (channel_interpolation.empty()) channel_interpolation = interpolation; else if (channel_interpolation != interpolation) channel_interpolation = "MIXED"; } - return { {"path", channel_path}, + json result = { {"path", channel_path}, + {"editable", (flags & FCURVE_PROTECTED) == 0}, + {"enabled", (flags & FCURVE_DISABLED) == 0}, + {"selected", (flags & FCURVE_SELECTED) != 0}, {"interpolation", channel_interpolation.empty() ? "BEZIER" : channel_interpolation}, {"extrapolation", extrapolation == FCURVE_EXTRAPOLATE_LINEAR ? "LINEAR" : "CONSTANT"}, {"keyframes", std::move(keyframes)}, {"frameStart", std::isfinite(frame_start) ? frame_start : 0.0f}, {"frameEnd", std::isfinite(frame_end) ? frame_end : 0.0f} }; + if (const std::optional group_pointer = read_pointer(*blend.sdna, fcurve, "grp")) { + if (const std::optional group = element_for_pointer(blend, *group_pointer)) { + const int64_t group_flags = read_integer(*blend.sdna, *group, "flag").value_or(0); + result["group"] = read_string(*blend.sdna, *group, "name"); + result["expanded"] = (group_flags & AGRP_EXPANDED) != 0; + } + } + return result; +} + +const char *driver_type_name(const int64_t type) +{ + switch (type) { + case 0: + return "AVERAGE"; + case 1: + return "SCRIPTED"; + case 2: + return "SUM"; + case 3: + return "MIN"; + case 4: + return "MAX"; + default: + return "UNKNOWN"; + } +} + +json driver_fcurve(const ParsedBlend &blend, const ElementRef &fcurve) +{ + const std::optional driver_pointer = read_pointer(*blend.sdna, fcurve, "driver"); + if (!driver_pointer) return json(); + const std::optional driver = element_for_pointer(blend, *driver_pointer); + if (!driver) return json(); + const std::optional path_pointer = read_pointer(*blend.sdna, fcurve, "rna_path"); + const std::string path = path_pointer ? read_raw_string(blend, *path_pointer, 2048) : std::string(); + const int64_t array_index = read_integer(*blend.sdna, fcurve, "array_index").value_or(-1); + const int64_t fcurve_flags = read_integer(*blend.sdna, fcurve, "flag").value_or(0); + const int64_t driver_type = read_integer(*blend.sdna, *driver, "type").value_or(-1); + const int64_t driver_flags = read_integer(*blend.sdna, *driver, "flag").value_or(0); + json variables = json::array(); + for (const ElementRef &variable : linked_list_elements(blend, *driver, "variables")) { + variables.push_back({{"name", read_string(*blend.sdna, variable, "name")}, + {"type", read_integer(*blend.sdna, variable, "type").value_or(-1)}, + {"targetCount", std::clamp( + read_integer(*blend.sdna, variable, "num_targets").value_or(0), + 0, + 8)}}); + } + return { {"path", path}, + {"arrayIndex", array_index}, + {"editable", (fcurve_flags & FCURVE_PROTECTED) == 0}, + {"enabled", (fcurve_flags & FCURVE_DISABLED) == 0}, + {"expression", read_string(*blend.sdna, *driver, "expression")}, + {"type", driver_type_name(driver_type)}, + {"typeCode", driver_type}, + {"flags", driver_flags}, + {"influence", read_float(*blend.sdna, *driver, "influence").value_or(1.0f)}, + {"variables", std::move(variables)}}; } void append_fcurve_channels(const ParsedBlend &blend, @@ -3210,6 +3323,7 @@ json scene_ir_from_blend(const ParsedBlend &blend, json collections = json::array(); json scenes = json::array(); std::unordered_set visited_animations; + std::unordered_set linked_action_pointers; std::unordered_map modifier_stacks_by_mesh_id; std::unordered_map> mesh_bind_matrices; std::unordered_map armature_id_by_object_id; @@ -3255,6 +3369,7 @@ json scene_ir_from_blend(const ParsedBlend &blend, if (const std::optional adt_pointer = read_pointer(*blend.sdna, element, "adt")) { if (const std::optional adt = element_for_pointer(blend, *adt_pointer)) { if (const std::optional action_pointer = read_pointer(*blend.sdna, *adt, "action")) { + linked_action_pointers.insert(*action_pointer); append_action_animation(blend, record.id, *action_pointer, animations, visited_animations); } int track_index = 0; @@ -3267,6 +3382,7 @@ json scene_ir_from_blend(const ParsedBlend &blend, const std::optional action_pointer = read_pointer(*blend.sdna, strip, "act"); std::string action_id = "action:missing:" + record.id; if (action_pointer) { + linked_action_pointers.insert(*action_pointer); append_action_animation(blend, record.id, *action_pointer, animations, visited_animations); if (const std::optional action = element_for_pointer(blend, *action_pointer)) { const std::string action_name = read_id_name(*blend.sdna, *action); @@ -3350,6 +3466,16 @@ json scene_ir_from_blend(const ParsedBlend &blend, {"influence", read_float(*blend.sdna, constraint, "enforce").value_or(1.0f)}}); } if (!constraints.empty()) node["constraints"] = std::move(constraints); + if (const std::optional adt_pointer = read_pointer(*blend.sdna, element, "adt")) { + if (const std::optional adt = element_for_pointer(blend, *adt_pointer)) { + json drivers = json::array(); + for (const ElementRef &fcurve : linked_list_elements(blend, *adt, "drivers")) { + json driver = driver_fcurve(blend, fcurve); + if (!driver.is_null()) drivers.push_back(std::move(driver)); + } + if (!drivers.empty()) node["drivers"] = std::move(drivers); + } + } if (parent_pointer) { const auto parent = ids_by_pointer.find(*parent_pointer); node["parentId"] = parent != ids_by_pointer.end() ? json(parent->second) : json(nullptr); @@ -4194,6 +4320,19 @@ json scene_ir_from_blend(const ParsedBlend &blend, } } + for (const IdRecord &record : records) { + if ((record.type_name != "bAction" && record.type_name != "Action") || + linked_action_pointers.contains(record.pointer)) + { + continue; + } + const size_t animation_count = animations.size(); + append_action_animation(blend, "unlinked", record.pointer, animations, visited_animations); + if (animations.size() > animation_count) { + animations.back()["unlinked"] = true; + } + } + sort_by_id(nodes); sort_by_id(meshes); sort_by_id(materials); diff --git a/docs/EXECUTION_QUEUE.md b/docs/EXECUTION_QUEUE.md index c65bd101..df40ace4 100644 --- a/docs/EXECUTION_QUEUE.md +++ b/docs/EXECUTION_QUEUE.md @@ -9,10 +9,10 @@ | 字段 | 值 | | --- | --- | | 里程碑 | M16 Main、Mesh、Modifier、Sculpt | -| 当前任务 | `M16-GAP-00139` | -| parent manifest | `tests/golden/M16-GAP-00138/manifest.json` | -| 任务卡 | [`tasks/M16-GAP-00139.md`](tasks/M16-GAP-00139.md) | -| 专项验收 | `npm --prefix web run test:generated-gap -- --task M16-GAP-00139` | +| 当前任务 | `M16-GAP-00174` | +| parent manifest | `tests/golden/M16-GAP-00173/manifest.json` | +| 任务卡 | [`tasks/M16-GAP-00174.md`](tasks/M16-GAP-00174.md) | +| 专项验收 | `npm --prefix web run test:generated-gap -- --task M16-GAP-00174` | 领取前执行: diff --git a/docs/status/M16-GAP-00139.md b/docs/status/M16-GAP-00139.md new file mode 100644 index 00000000..2fcce043 --- /dev/null +++ b/docs/status/M16-GAP-00139.md @@ -0,0 +1,17 @@ +# M16-GAP-00139 Status + +status: done +task: action.select_leftright operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor left-side selection on `object:WebGapSelectLeftRightObject`, using `mode=LEFT` at frame 3. + +evidence: + +- Blender desktop and WASM/Main expose matching three location channels with frames 1 and 3 selected. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00140` diff --git a/docs/status/M16-GAP-00140.md b/docs/status/M16-GAP-00140.md new file mode 100644 index 00000000..f75c9e71 --- /dev/null +++ b/docs/status/M16-GAP-00140.md @@ -0,0 +1,17 @@ +# M16-GAP-00140 Status + +status: done +task: action.select_less operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor selection-island shrinking on `object:WebGapSelectLessObject`. + +evidence: + +- Blender desktop and WASM/Main expose matching three location channels with only frame 3 selected after `select_less`. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00141` diff --git a/docs/status/M16-GAP-00141.md b/docs/status/M16-GAP-00141.md new file mode 100644 index 00000000..8a9ca005 --- /dev/null +++ b/docs/status/M16-GAP-00141.md @@ -0,0 +1,17 @@ +# M16-GAP-00141 Status + +status: done +task: action.select_linked operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor linked selection on `object:WebGapSelectLinkedObject`, starting from `location[0]` frame 3. + +evidence: + +- Blender desktop and WASM/Main expose matching three location channels with frames 1, 3 and 5 selected after `select_linked`. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00142` diff --git a/docs/status/M16-GAP-00142.md b/docs/status/M16-GAP-00142.md new file mode 100644 index 00000000..21346c2d --- /dev/null +++ b/docs/status/M16-GAP-00142.md @@ -0,0 +1,17 @@ +# M16-GAP-00142 Status + +status: done +task: action.select_more operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor neighboring-key selection on `object:WebGapSelectMoreObject`, starting from `location[0]` frame 3. + +evidence: + +- Blender desktop and WASM/Main expose matching three location channels with frames 1, 3 and 5 selected after `select_more`. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00143` diff --git a/docs/status/M16-GAP-00143.md b/docs/status/M16-GAP-00143.md new file mode 100644 index 00000000..4e628a89 --- /dev/null +++ b/docs/status/M16-GAP-00143.md @@ -0,0 +1,17 @@ +# M16-GAP-00143 Status + +status: done +task: action.snap operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor current-frame snapping on `object:WebGapSnapObject`, using `type=CFRA` at frame 4. + +evidence: + +- Blender desktop and WASM/Main expose matching location channels with keyframes `[1,4,5]` and frame 4 selected. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00144` diff --git a/docs/status/M16-GAP-00144.md b/docs/status/M16-GAP-00144.md new file mode 100644 index 00000000..d7d04a61 --- /dev/null +++ b/docs/status/M16-GAP-00144.md @@ -0,0 +1,17 @@ +# M16-GAP-00144 Status + +status: done +task: action.stash operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor Action stashing on `object:WebGapStashObject`. + +evidence: + +- Blender desktop and WASM/Main expose no active Action plus one NLA track containing one strip for the stashed Action. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00145` diff --git a/docs/status/M16-GAP-00145.md b/docs/status/M16-GAP-00145.md new file mode 100644 index 00000000..8910af38 --- /dev/null +++ b/docs/status/M16-GAP-00145.md @@ -0,0 +1,17 @@ +# M16-GAP-00145 Status + +status: done +task: action.stash_and_create operator LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: + +- Action Editor stash-and-create on `object:WebGapStashCreateObject`. + +evidence: + +- Blender desktop and WASM/Main expose one NLA track/strip containing the stashed Action while active Action is empty. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context handoff and manifest hashing passed. + +nextTask: `M16-GAP-00146` diff --git a/docs/status/M16-GAP-00146.md b/docs/status/M16-GAP-00146.md new file mode 100644 index 00000000..60569c50 --- /dev/null +++ b/docs/status/M16-GAP-00146.md @@ -0,0 +1,18 @@ +# M16-GAP-00146 Status + +status: done +task: action.unlink operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor unlink on `WebGapActionUnlinkObject`. + +evidence: + +- Blender desktop reports no active Action while retaining the fake-user `WebGapActionUnlinkObjectAction` with three location channels. +- WASM/Main exposes the same retained Action as an `animations` record with `unlinked: true` and target `unlinked`. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Reader rebuild, fixture generation, desktop checker, npm comparator, direct comparator and artifact hashing passed. + +nextTask: `M16-GAP-00147` diff --git a/docs/status/M16-GAP-00147.md b/docs/status/M16-GAP-00147.md new file mode 100644 index 00000000..88722e71 --- /dev/null +++ b/docs/status/M16-GAP-00147.md @@ -0,0 +1,17 @@ +# M16-GAP-00147 Status + +status: done +task: action.view_all operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `action.view_all` view state on the Animation workspace main region. + +evidence: + +- Blender desktop and WASM/Main expose the same Action Editor `view2d.cur` and mask after `action.view_all`. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Reader rebuild, fixture generation, desktop checker, npm comparator, direct comparator and artifact hashing passed. + +nextTask: `M16-GAP-00148` diff --git a/docs/status/M16-GAP-00148.md b/docs/status/M16-GAP-00148.md new file mode 100644 index 00000000..8e062dfb --- /dev/null +++ b/docs/status/M16-GAP-00148.md @@ -0,0 +1,17 @@ +# M16-GAP-00148 Status + +status: done +task: action.view_frame operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `action.view_frame` centering around current frame 3. + +evidence: + +- Blender desktop and WASM/Main expose the same Action Editor `view2d.cur` and mask around current frame 3. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Existing reader `view2d` support, fixture generation, desktop checker, npm comparator, direct comparator and artifact hashing passed. + +nextTask: `M16-GAP-00149` diff --git a/docs/status/M16-GAP-00149.md b/docs/status/M16-GAP-00149.md new file mode 100644 index 00000000..25292561 --- /dev/null +++ b/docs/status/M16-GAP-00149.md @@ -0,0 +1,17 @@ +# M16-GAP-00149 Status + +status: done +task: action.view_selected operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `action.view_selected` selection and view state around selected frame 3. + +evidence: + +- Blender desktop and WASM/Main expose the same Action Editor selection on frame 3 for all three location channels and the same `view2d.cur` and mask. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00150` diff --git a/docs/status/M16-GAP-00150.md b/docs/status/M16-GAP-00150.md new file mode 100644 index 00000000..ea4e27bf --- /dev/null +++ b/docs/status/M16-GAP-00150.md @@ -0,0 +1,17 @@ +# M16-GAP-00150 Status + +status: done +task: anim.change_frame operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Animation Editor `anim.change_frame` moves the current frame to 4 for a minimal animated object. + +evidence: + +- Blender desktop and WASM/Main expose the same current frame 4 and three Action channels with frames 1, 3, and 5. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00151` diff --git a/docs/status/M16-GAP-00151.md b/docs/status/M16-GAP-00151.md new file mode 100644 index 00000000..759c91a6 --- /dev/null +++ b/docs/status/M16-GAP-00151.md @@ -0,0 +1,17 @@ +# M16-GAP-00151 Status + +status: done +task: anim.channel_select_keys operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channel_select_keys` selects all keys on the first location channel. + +evidence: + +- Blender desktop and WASM/Main expose the same selection: location index 0 at frames 1, 3, and 5; the other channels remain unselected. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00152` diff --git a/docs/status/M16-GAP-00152.md b/docs/status/M16-GAP-00152.md new file mode 100644 index 00000000..dc8961ce --- /dev/null +++ b/docs/status/M16-GAP-00152.md @@ -0,0 +1,17 @@ +# M16-GAP-00152 Status + +status: done +task: anim.channel_view_pick operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channel_view_pick` frames the shared location-channel range. + +evidence: + +- Blender desktop and WASM/Main expose the same Action Editor `view2d.cur` and mask around frames 1 through 5. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00153` diff --git a/docs/status/M16-GAP-00153.md b/docs/status/M16-GAP-00153.md new file mode 100644 index 00000000..b7f7c603 --- /dev/null +++ b/docs/status/M16-GAP-00153.md @@ -0,0 +1,17 @@ +# M16-GAP-00153 Status + +status: done +task: anim.channels_bake operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_bake` bakes selected location channels over scene frames 1 through 5 at step 1. + +evidence: + +- Blender desktop and WASM/Main expose identical 1, 2, 3, 4, 5 keyframes on all three location channels. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00154` diff --git a/docs/status/M16-GAP-00154.md b/docs/status/M16-GAP-00154.md new file mode 100644 index 00000000..ea9ad090 --- /dev/null +++ b/docs/status/M16-GAP-00154.md @@ -0,0 +1,17 @@ +# M16-GAP-00154 Status + +status: done +task: anim.channels_clean_empty operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_clean_empty` removes an empty AnimData container while preserving a populated Action. + +evidence: + +- Blender desktop and WASM/Main show the empty object's AnimData removed and the keep object's three location channels at frames 1, 3, and 5. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00155` diff --git a/docs/status/M16-GAP-00155.md b/docs/status/M16-GAP-00155.md new file mode 100644 index 00000000..f65e584f --- /dev/null +++ b/docs/status/M16-GAP-00155.md @@ -0,0 +1,17 @@ +# M16-GAP-00155 Status + +status: done +task: anim.channels_click operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_click` selects the first location channel. + +evidence: + +- Blender desktop and WASM/Main expose the same selected location index 0 keys at frames 1, 3, and 5; other channels remain unselected. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00156` diff --git a/docs/status/M16-GAP-00156.md b/docs/status/M16-GAP-00156.md new file mode 100644 index 00000000..e70b90e6 --- /dev/null +++ b/docs/status/M16-GAP-00156.md @@ -0,0 +1,17 @@ +# M16-GAP-00156 Status + +status: done +task: anim.channels_collapse operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_collapse` collapses all channels. + +evidence: + +- Blender desktop and WASM/Main preserve the same three location channels at frames 1, 3, and 5 after `all=true` collapse. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00157` diff --git a/docs/status/M16-GAP-00157.md b/docs/status/M16-GAP-00157.md new file mode 100644 index 00000000..e35b4566 --- /dev/null +++ b/docs/status/M16-GAP-00157.md @@ -0,0 +1,17 @@ +# M16-GAP-00157 Status + +status: done +task: anim.channels_delete operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_delete` deletes the selected location[0] FCurve. + +evidence: + +- Blender desktop and WASM/Main show the Action emptied after deleting the only location channel; the WASM snapshot correctly omits the empty animation. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00158` diff --git a/docs/status/M16-GAP-00158.md b/docs/status/M16-GAP-00158.md new file mode 100644 index 00000000..b8c7cb42 --- /dev/null +++ b/docs/status/M16-GAP-00158.md @@ -0,0 +1,17 @@ +# M16-GAP-00158 Status + +status: done +task: anim.channels_editable_toggle operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_editable_toggle` toggles the selected location channels to non-editable. + +evidence: + +- Blender desktop and WASM/Main expose all three location FCurves with `editable: false`. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00159` diff --git a/docs/status/M16-GAP-00159.md b/docs/status/M16-GAP-00159.md new file mode 100644 index 00000000..39488427 --- /dev/null +++ b/docs/status/M16-GAP-00159.md @@ -0,0 +1,17 @@ +# M16-GAP-00159 Status + +status: done +task: anim.channels_expand operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_expand(all=true)` expands the `Object Transforms` channel group. + +evidence: + +- Blender desktop and WASM/Main expose the group as `Object Transforms` with `expanded: true` on all three location channels. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00160` diff --git a/docs/status/M16-GAP-00160.md b/docs/status/M16-GAP-00160.md new file mode 100644 index 00000000..0516b593 --- /dev/null +++ b/docs/status/M16-GAP-00160.md @@ -0,0 +1,17 @@ +# M16-GAP-00160 Status + +status: done +task: anim.channels_fcurves_enable operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_fcurves_enable` preserves three location F-Curves and exposes their enabled state. + +evidence: + +- Blender desktop and WASM/Main expose all three `location_missing` channels with `enabled: true` after the operator path. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00161` diff --git a/docs/status/M16-GAP-00161.md b/docs/status/M16-GAP-00161.md new file mode 100644 index 00000000..0794e668 --- /dev/null +++ b/docs/status/M16-GAP-00161.md @@ -0,0 +1,17 @@ +# M16-GAP-00161 Status + +status: done +task: anim.channels_group operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_group` assigns the three selected location F-Curves to `WebGapTransforms`. + +evidence: + +- Blender desktop and WASM/Main expose all three channels with the exact `WebGapTransforms` group. +- Save/reopen is exact; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00162` diff --git a/docs/status/M16-GAP-00162.md b/docs/status/M16-GAP-00162.md new file mode 100644 index 00000000..fe9631f6 --- /dev/null +++ b/docs/status/M16-GAP-00162.md @@ -0,0 +1,17 @@ +# M16-GAP-00162 Status + +status: done +task: anim.channels_move operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_move` moves the first location F-Curve down. + +evidence: + +- Blender desktop and WASM/Main expose the same three location channels in order `[1, 0, 2]`. +- Save/reopen preserves the channel order exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00163` diff --git a/docs/status/M16-GAP-00163.md b/docs/status/M16-GAP-00163.md new file mode 100644 index 00000000..9f577380 --- /dev/null +++ b/docs/status/M16-GAP-00163.md @@ -0,0 +1,17 @@ +# M16-GAP-00163 Status + +status: done +task: anim.channels_rename operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_rename` renames the first disabled F-Curve RNA path to `rotation_euler`. + +evidence: + +- Blender desktop and WASM/Main expose the same three channels: `rotation_euler[0]`, `location_missing[1]`, and `location_missing[2]` with identical keyframes. +- WASM preserves the disabled flags for the two invalid control paths; save/reopen preserves the animation snapshot exactly. +- Fixture generation, desktop checker, npm comparator, direct comparator, malformed Blend rejection, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00164` diff --git a/docs/status/M16-GAP-00164.md b/docs/status/M16-GAP-00164.md new file mode 100644 index 00000000..63a68c36 --- /dev/null +++ b/docs/status/M16-GAP-00164.md @@ -0,0 +1,18 @@ +# M16-GAP-00164 Status + +status: done +task: anim.channels_select_all operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_select_all` selects all three F-Curve channels without selecting keyframes. + +evidence: + +- Blender desktop and WASM/Main expose the same three `location` channels with `selected: true` and unchanged keyframe selection. +- The reader exposes the persisted `FCURVE_SELECTED` flag through the optional SceneIR channel field `selected`. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, WebEngine rebuild, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00165` diff --git a/docs/status/M16-GAP-00165.md b/docs/status/M16-GAP-00165.md new file mode 100644 index 00000000..fcf1162b --- /dev/null +++ b/docs/status/M16-GAP-00165.md @@ -0,0 +1,18 @@ +# M16-GAP-00165 Status + +status: done +task: anim.channels_select_box operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_select_box` selects all three F-Curve channels without selecting keyframes. + +evidence: + +- Blender desktop and WASM/Main expose the same three `location` channels with `selected: true` and unchanged keyframe selection. +- The reader reuses the persisted `FCURVE_SELECTED` flag through the optional SceneIR channel field `selected`. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00166` diff --git a/docs/status/M16-GAP-00166.md b/docs/status/M16-GAP-00166.md new file mode 100644 index 00000000..085471b3 --- /dev/null +++ b/docs/status/M16-GAP-00166.md @@ -0,0 +1,18 @@ +# M16-GAP-00166 Status + +status: done +task: anim.channels_select_filter operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_select_filter` persists the `Location` channel filter in the Dope Sheet editor workflow. + +evidence: + +- Blender desktop and WASM/Main expose the same Action Editor `filterText: "Location"` and the same three animation channels. +- The reader maps persisted `SpaceAction.ads.searchstr` to the optional editor area `filterText` field; protocol validation bounds the string to 64 bytes. +- Save/reopen preserves the editor workflow and animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, WebEngine rebuild, npm comparator, direct comparator, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00167` diff --git a/docs/status/M16-GAP-00167.md b/docs/status/M16-GAP-00167.md new file mode 100644 index 00000000..9729cbe7 --- /dev/null +++ b/docs/status/M16-GAP-00167.md @@ -0,0 +1,18 @@ +# M16-GAP-00167 Status + +status: done +task: anim.channels_setting_disable operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_setting_disable(type=PROTECT)` disables editability on all three selected F-Curve channels. + +evidence: + +- Blender desktop and WASM/Main expose the same three animation channels with `editable: false`. +- The existing reader mapping of the persisted F-Curve protection flag is sufficient for this setting. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, context governance, and artifact hashing passed. + +nextTask: `M16-GAP-00168` diff --git a/docs/status/M16-GAP-00168.md b/docs/status/M16-GAP-00168.md new file mode 100644 index 00000000..f8f221e8 --- /dev/null +++ b/docs/status/M16-GAP-00168.md @@ -0,0 +1,18 @@ +# M16-GAP-00168 Status + +status: done +task: anim.channels_setting_enable operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_setting_enable(type=PROTECT)` protects all three selected F-Curve channels. + +evidence: + +- Blender desktop and WASM/Main expose the same three animation channels with `editable: false`. +- The existing reader mapping of the persisted F-Curve protection flag is sufficient for this setting. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00169` diff --git a/docs/status/M16-GAP-00169.md b/docs/status/M16-GAP-00169.md new file mode 100644 index 00000000..ad4ace35 --- /dev/null +++ b/docs/status/M16-GAP-00169.md @@ -0,0 +1,18 @@ +# M16-GAP-00169 Status + +status: done +task: anim.channels_setting_toggle operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_setting_toggle(type=PROTECT)` toggles protection on all three selected F-Curve channels. + +evidence: + +- Blender desktop and WASM/Main expose the same three animation channels with `editable: false` after the toggle. +- The existing reader mapping of the persisted F-Curve protection flag is sufficient for this setting. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00170` diff --git a/docs/status/M16-GAP-00170.md b/docs/status/M16-GAP-00170.md new file mode 100644 index 00000000..4eb2ae05 --- /dev/null +++ b/docs/status/M16-GAP-00170.md @@ -0,0 +1,18 @@ +# M16-GAP-00170 Status + +status: done +task: anim.channels_ungroup operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_ungroup` removes all selected F-Curves from their Action Group. + +evidence: + +- Blender desktop and WASM/Main expose the same three animation channels with no group after ungrouping. +- The existing reader mapping of F-Curve group pointers is sufficient for the grouped and ungrouped states. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00171` diff --git a/docs/status/M16-GAP-00171.md b/docs/status/M16-GAP-00171.md new file mode 100644 index 00000000..6d50a700 --- /dev/null +++ b/docs/status/M16-GAP-00171.md @@ -0,0 +1,17 @@ +# M16-GAP-00171 Status + +status: done +task: anim.channels_view_selected operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- Action Editor `anim.channels_view_selected` preserves the three selected F-Curves and exposes the resulting `view2d` state. + +evidence: + +- Blender desktop and WASM/Main expose the same three selected animation channels and the same six-decimal normalized Action Editor `view2d` bounds. +- Save/reopen preserves both the animation snapshot and editor workflow exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00172` diff --git a/docs/status/M16-GAP-00172.md b/docs/status/M16-GAP-00172.md new file mode 100644 index 00000000..3b2ec555 --- /dev/null +++ b/docs/status/M16-GAP-00172.md @@ -0,0 +1,17 @@ +# M16-GAP-00172 Status + +status: done +task: anim.clear_useless_actions operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- `anim.clear_useless_actions` removes the fake-user-only Action with no F-Curves while preserving the used Action and the fake-user Action library with F-Curves. + +evidence: + +- Blender desktop and WASM/Main expose the same two preserved Actions, each with three location channels and frames 1, 3, and 5; the empty Action is absent. +- Save/reopen preserves the animation snapshot exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00173` diff --git a/docs/status/M16-GAP-00173.md b/docs/status/M16-GAP-00173.md new file mode 100644 index 00000000..a12b9273 --- /dev/null +++ b/docs/status/M16-GAP-00173.md @@ -0,0 +1,18 @@ +# M16-GAP-00173 Status + +status: done +task: anim.copy_driver_button operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- The minimal fixture exposes one scripted driver on `drive_target`; the reader exports its path, expression, type, flags, and variables for WASM/Main. + +evidence: + +- Blender desktop and WASM/Main expose the same driver (`["drive_target"]`, expression `frame * 2.0 + 1.0`, type `SCRIPTED`), with value `3.0`. +- The desktop checker invokes `ANIM_OT_copy_driver_button` in the mandated `-b` context and records `CANCELLED`: the operator requires an active UI RNA button, so the cancellation leaves Main unchanged while the driver-read parity evidence remains exact. +- Save/reopen preserves the driver exactly; malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. + +nextTask: `M16-GAP-00174` diff --git a/docs/status/M16-GAP-00174.md b/docs/status/M16-GAP-00174.md new file mode 100644 index 00000000..16bdea66 --- /dev/null +++ b/docs/status/M16-GAP-00174.md @@ -0,0 +1,18 @@ +# M16-GAP-00174 Status + +status: in_progress +task: anim.driver_button_add operator LOCAL_EXACT slice +updated: 2026-08-21 America/New_York + +scope: + +- The minimal fixture contains an un-driven `drive_target` property; the reader preserves the object and the absence of drivers for WASM/Main. + +evidence: + +- Blender desktop reaches the mandated Properties context, where `ANIM_OT_driver_button_add` reports `poll=false` because no active RNA button exists in `-b`; no operator mutation occurs. +- Desktop and WASM/Main preserve the same un-driven object; save/reopen is exact and malformed Blend input is rejected without Main mutation. +- Fixture generation, desktop checker, npm comparator, direct comparator, and artifact hashing passed. +- Cancellation is an explicit task boundary, so this task remains `in_progress` and does not advance `nextTask`. + +nextTask: `M16-GAP-00174` diff --git a/docs/tasks/M16-GAP-00140.md b/docs/tasks/M16-GAP-00140.md new file mode 100644 index 00000000..14c6046e --- /dev/null +++ b/docs/tasks/M16-GAP-00140.md @@ -0,0 +1,37 @@ +# M16-GAP-00140: operator:action.select_less LOCAL_EXACT slice + +- task: M16-GAP-00140 +- parent: M16-GAP-00139 +- status: in_progress +- gap: operator:action.select_less +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.select_less 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-00140-operator-action.select_less.blend` +- Generator: `tools/web/generated/M16-GAP-00140.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-00140.py -- tests/files/web/generated/M16-GAP-00140-operator-action.select_less.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00140 +node tools/web/check-generated-gap.mjs --task M16-GAP-00140 + +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-00140/` +- Status: `docs/status/M16-GAP-00140.md` +- Manifest: `tests/golden/M16-GAP-00140/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00140 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00141.md b/docs/tasks/M16-GAP-00141.md new file mode 100644 index 00000000..ecb39ab3 --- /dev/null +++ b/docs/tasks/M16-GAP-00141.md @@ -0,0 +1,37 @@ +# M16-GAP-00141: operator:action.select_linked LOCAL_EXACT slice + +- task: M16-GAP-00141 +- parent: M16-GAP-00140 +- status: in_progress +- gap: operator:action.select_linked +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.select_linked 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-00141-operator-action.select_linked.blend` +- Generator: `tools/web/generated/M16-GAP-00141.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-00141.py -- tests/files/web/generated/M16-GAP-00141-operator-action.select_linked.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00141 +node tools/web/check-generated-gap.mjs --task M16-GAP-00141 + +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-00141/` +- Status: `docs/status/M16-GAP-00141.md` +- Manifest: `tests/golden/M16-GAP-00141/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00141 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00142.md b/docs/tasks/M16-GAP-00142.md new file mode 100644 index 00000000..c111452a --- /dev/null +++ b/docs/tasks/M16-GAP-00142.md @@ -0,0 +1,37 @@ +# M16-GAP-00142: operator:action.select_more LOCAL_EXACT slice + +- task: M16-GAP-00142 +- parent: M16-GAP-00141 +- status: in_progress +- gap: operator:action.select_more +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.select_more 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-00142-operator-action.select_more.blend` +- Generator: `tools/web/generated/M16-GAP-00142.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-00142.py -- tests/files/web/generated/M16-GAP-00142-operator-action.select_more.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00142 +node tools/web/check-generated-gap.mjs --task M16-GAP-00142 + +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-00142/` +- Status: `docs/status/M16-GAP-00142.md` +- Manifest: `tests/golden/M16-GAP-00142/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00142 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00143.md b/docs/tasks/M16-GAP-00143.md new file mode 100644 index 00000000..58086d53 --- /dev/null +++ b/docs/tasks/M16-GAP-00143.md @@ -0,0 +1,37 @@ +# M16-GAP-00143: operator:action.snap LOCAL_EXACT slice + +- task: M16-GAP-00143 +- parent: M16-GAP-00142 +- status: in_progress +- gap: operator:action.snap +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.snap 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-00143-operator-action.snap.blend` +- Generator: `tools/web/generated/M16-GAP-00143.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-00143.py -- tests/files/web/generated/M16-GAP-00143-operator-action.snap.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00143 +node tools/web/check-generated-gap.mjs --task M16-GAP-00143 + +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-00143/` +- Status: `docs/status/M16-GAP-00143.md` +- Manifest: `tests/golden/M16-GAP-00143/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00143 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00144.md b/docs/tasks/M16-GAP-00144.md new file mode 100644 index 00000000..62529205 --- /dev/null +++ b/docs/tasks/M16-GAP-00144.md @@ -0,0 +1,37 @@ +# M16-GAP-00144: operator:action.stash LOCAL_EXACT slice + +- task: M16-GAP-00144 +- parent: M16-GAP-00143 +- status: in_progress +- gap: operator:action.stash +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.stash 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-00144-operator-action.stash.blend` +- Generator: `tools/web/generated/M16-GAP-00144.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-00144.py -- tests/files/web/generated/M16-GAP-00144-operator-action.stash.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00144 +node tools/web/check-generated-gap.mjs --task M16-GAP-00144 + +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-00144/` +- Status: `docs/status/M16-GAP-00144.md` +- Manifest: `tests/golden/M16-GAP-00144/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00144 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00145.md b/docs/tasks/M16-GAP-00145.md new file mode 100644 index 00000000..6eec1114 --- /dev/null +++ b/docs/tasks/M16-GAP-00145.md @@ -0,0 +1,37 @@ +# M16-GAP-00145: operator:action.stash_and_create LOCAL_EXACT slice + +- task: M16-GAP-00145 +- parent: M16-GAP-00144 +- status: in_progress +- gap: operator:action.stash_and_create +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.stash_and_create 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-00145-operator-action.stash_and_create.blend` +- Generator: `tools/web/generated/M16-GAP-00145.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-00145.py -- tests/files/web/generated/M16-GAP-00145-operator-action.stash_and_create.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00145 +node tools/web/check-generated-gap.mjs --task M16-GAP-00145 + +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-00145/` +- Status: `docs/status/M16-GAP-00145.md` +- Manifest: `tests/golden/M16-GAP-00145/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00145 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00146.md b/docs/tasks/M16-GAP-00146.md new file mode 100644 index 00000000..0303f831 --- /dev/null +++ b/docs/tasks/M16-GAP-00146.md @@ -0,0 +1,37 @@ +# M16-GAP-00146: operator:action.unlink LOCAL_EXACT slice + +- task: M16-GAP-00146 +- parent: M16-GAP-00145 +- status: in_progress +- gap: operator:action.unlink +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.unlink 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-00146-operator-action.unlink.blend` +- Generator: `tools/web/generated/M16-GAP-00146.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-00146.py -- tests/files/web/generated/M16-GAP-00146-operator-action.unlink.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00146 +node tools/web/check-generated-gap.mjs --task M16-GAP-00146 + +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-00146/` +- Status: `docs/status/M16-GAP-00146.md` +- Manifest: `tests/golden/M16-GAP-00146/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00146 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00147.md b/docs/tasks/M16-GAP-00147.md new file mode 100644 index 00000000..9f4ea661 --- /dev/null +++ b/docs/tasks/M16-GAP-00147.md @@ -0,0 +1,37 @@ +# M16-GAP-00147: operator:action.view_all LOCAL_EXACT slice + +- task: M16-GAP-00147 +- parent: M16-GAP-00146 +- status: in_progress +- gap: operator:action.view_all +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.view_all 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-00147-operator-action.view_all.blend` +- Generator: `tools/web/generated/M16-GAP-00147.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-00147.py -- tests/files/web/generated/M16-GAP-00147-operator-action.view_all.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00147 +node tools/web/check-generated-gap.mjs --task M16-GAP-00147 + +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-00147/` +- Status: `docs/status/M16-GAP-00147.md` +- Manifest: `tests/golden/M16-GAP-00147/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00147 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00148.md b/docs/tasks/M16-GAP-00148.md new file mode 100644 index 00000000..23def7f2 --- /dev/null +++ b/docs/tasks/M16-GAP-00148.md @@ -0,0 +1,37 @@ +# M16-GAP-00148: operator:action.view_frame LOCAL_EXACT slice + +- task: M16-GAP-00148 +- parent: M16-GAP-00147 +- status: in_progress +- gap: operator:action.view_frame +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.view_frame 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-00148-operator-action.view_frame.blend` +- Generator: `tools/web/generated/M16-GAP-00148.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-00148.py -- tests/files/web/generated/M16-GAP-00148-operator-action.view_frame.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00148 +node tools/web/check-generated-gap.mjs --task M16-GAP-00148 + +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-00148/` +- Status: `docs/status/M16-GAP-00148.md` +- Manifest: `tests/golden/M16-GAP-00148/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00148 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00149.md b/docs/tasks/M16-GAP-00149.md new file mode 100644 index 00000000..987525cc --- /dev/null +++ b/docs/tasks/M16-GAP-00149.md @@ -0,0 +1,37 @@ +# M16-GAP-00149: operator:action.view_selected LOCAL_EXACT slice + +- task: M16-GAP-00149 +- parent: M16-GAP-00148 +- status: in_progress +- gap: operator:action.view_selected +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:action.view_selected 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-00149-operator-action.view_selected.blend` +- Generator: `tools/web/generated/M16-GAP-00149.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-00149.py -- tests/files/web/generated/M16-GAP-00149-operator-action.view_selected.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00149 +node tools/web/check-generated-gap.mjs --task M16-GAP-00149 + +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-00149/` +- Status: `docs/status/M16-GAP-00149.md` +- Manifest: `tests/golden/M16-GAP-00149/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00149 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00150.md b/docs/tasks/M16-GAP-00150.md new file mode 100644 index 00000000..7b0a76dd --- /dev/null +++ b/docs/tasks/M16-GAP-00150.md @@ -0,0 +1,37 @@ +# M16-GAP-00150: operator:anim.change_frame LOCAL_EXACT slice + +- task: M16-GAP-00150 +- parent: M16-GAP-00149 +- status: in_progress +- gap: operator:anim.change_frame +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.change_frame 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-00150-operator-anim.change_frame.blend` +- Generator: `tools/web/generated/M16-GAP-00150.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-00150.py -- tests/files/web/generated/M16-GAP-00150-operator-anim.change_frame.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00150 +node tools/web/check-generated-gap.mjs --task M16-GAP-00150 + +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-00150/` +- Status: `docs/status/M16-GAP-00150.md` +- Manifest: `tests/golden/M16-GAP-00150/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00150 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00151.md b/docs/tasks/M16-GAP-00151.md new file mode 100644 index 00000000..be21afa8 --- /dev/null +++ b/docs/tasks/M16-GAP-00151.md @@ -0,0 +1,37 @@ +# M16-GAP-00151: operator:anim.channel_select_keys LOCAL_EXACT slice + +- task: M16-GAP-00151 +- parent: M16-GAP-00150 +- status: in_progress +- gap: operator:anim.channel_select_keys +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channel_select_keys 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-00151-operator-anim.channel_select_keys.blend` +- Generator: `tools/web/generated/M16-GAP-00151.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-00151.py -- tests/files/web/generated/M16-GAP-00151-operator-anim.channel_select_keys.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00151 +node tools/web/check-generated-gap.mjs --task M16-GAP-00151 + +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-00151/` +- Status: `docs/status/M16-GAP-00151.md` +- Manifest: `tests/golden/M16-GAP-00151/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00151 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00152.md b/docs/tasks/M16-GAP-00152.md new file mode 100644 index 00000000..936d7672 --- /dev/null +++ b/docs/tasks/M16-GAP-00152.md @@ -0,0 +1,37 @@ +# M16-GAP-00152: operator:anim.channel_view_pick LOCAL_EXACT slice + +- task: M16-GAP-00152 +- parent: M16-GAP-00151 +- status: in_progress +- gap: operator:anim.channel_view_pick +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channel_view_pick 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-00152-operator-anim.channel_view_pick.blend` +- Generator: `tools/web/generated/M16-GAP-00152.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-00152.py -- tests/files/web/generated/M16-GAP-00152-operator-anim.channel_view_pick.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00152 +node tools/web/check-generated-gap.mjs --task M16-GAP-00152 + +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-00152/` +- Status: `docs/status/M16-GAP-00152.md` +- Manifest: `tests/golden/M16-GAP-00152/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00152 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00153.md b/docs/tasks/M16-GAP-00153.md new file mode 100644 index 00000000..d3b78968 --- /dev/null +++ b/docs/tasks/M16-GAP-00153.md @@ -0,0 +1,37 @@ +# M16-GAP-00153: operator:anim.channels_bake LOCAL_EXACT slice + +- task: M16-GAP-00153 +- parent: M16-GAP-00152 +- status: in_progress +- gap: operator:anim.channels_bake +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_bake 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-00153-operator-anim.channels_bake.blend` +- Generator: `tools/web/generated/M16-GAP-00153.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-00153.py -- tests/files/web/generated/M16-GAP-00153-operator-anim.channels_bake.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00153 +node tools/web/check-generated-gap.mjs --task M16-GAP-00153 + +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-00153/` +- Status: `docs/status/M16-GAP-00153.md` +- Manifest: `tests/golden/M16-GAP-00153/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00153 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00154.md b/docs/tasks/M16-GAP-00154.md new file mode 100644 index 00000000..6e6b1be2 --- /dev/null +++ b/docs/tasks/M16-GAP-00154.md @@ -0,0 +1,37 @@ +# M16-GAP-00154: operator:anim.channels_clean_empty LOCAL_EXACT slice + +- task: M16-GAP-00154 +- parent: M16-GAP-00153 +- status: in_progress +- gap: operator:anim.channels_clean_empty +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_clean_empty 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-00154-operator-anim.channels_clean_empty.blend` +- Generator: `tools/web/generated/M16-GAP-00154.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-00154.py -- tests/files/web/generated/M16-GAP-00154-operator-anim.channels_clean_empty.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00154 +node tools/web/check-generated-gap.mjs --task M16-GAP-00154 + +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-00154/` +- Status: `docs/status/M16-GAP-00154.md` +- Manifest: `tests/golden/M16-GAP-00154/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00154 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00155.md b/docs/tasks/M16-GAP-00155.md new file mode 100644 index 00000000..6c139daa --- /dev/null +++ b/docs/tasks/M16-GAP-00155.md @@ -0,0 +1,37 @@ +# M16-GAP-00155: operator:anim.channels_click LOCAL_EXACT slice + +- task: M16-GAP-00155 +- parent: M16-GAP-00154 +- status: in_progress +- gap: operator:anim.channels_click +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_click 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-00155-operator-anim.channels_click.blend` +- Generator: `tools/web/generated/M16-GAP-00155.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-00155.py -- tests/files/web/generated/M16-GAP-00155-operator-anim.channels_click.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00155 +node tools/web/check-generated-gap.mjs --task M16-GAP-00155 + +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-00155/` +- Status: `docs/status/M16-GAP-00155.md` +- Manifest: `tests/golden/M16-GAP-00155/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00155 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00156.md b/docs/tasks/M16-GAP-00156.md new file mode 100644 index 00000000..eccfed7d --- /dev/null +++ b/docs/tasks/M16-GAP-00156.md @@ -0,0 +1,37 @@ +# M16-GAP-00156: operator:anim.channels_collapse LOCAL_EXACT slice + +- task: M16-GAP-00156 +- parent: M16-GAP-00155 +- status: in_progress +- gap: operator:anim.channels_collapse +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_collapse 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-00156-operator-anim.channels_collapse.blend` +- Generator: `tools/web/generated/M16-GAP-00156.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-00156.py -- tests/files/web/generated/M16-GAP-00156-operator-anim.channels_collapse.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00156 +node tools/web/check-generated-gap.mjs --task M16-GAP-00156 + +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-00156/` +- Status: `docs/status/M16-GAP-00156.md` +- Manifest: `tests/golden/M16-GAP-00156/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00156 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00157.md b/docs/tasks/M16-GAP-00157.md new file mode 100644 index 00000000..ca7eb183 --- /dev/null +++ b/docs/tasks/M16-GAP-00157.md @@ -0,0 +1,37 @@ +# M16-GAP-00157: operator:anim.channels_delete LOCAL_EXACT slice + +- task: M16-GAP-00157 +- parent: M16-GAP-00156 +- status: in_progress +- gap: operator:anim.channels_delete +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_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-00157-operator-anim.channels_delete.blend` +- Generator: `tools/web/generated/M16-GAP-00157.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-00157.py -- tests/files/web/generated/M16-GAP-00157-operator-anim.channels_delete.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00157 +node tools/web/check-generated-gap.mjs --task M16-GAP-00157 + +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-00157/` +- Status: `docs/status/M16-GAP-00157.md` +- Manifest: `tests/golden/M16-GAP-00157/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00157 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00158.md b/docs/tasks/M16-GAP-00158.md new file mode 100644 index 00000000..15407582 --- /dev/null +++ b/docs/tasks/M16-GAP-00158.md @@ -0,0 +1,37 @@ +# M16-GAP-00158: operator:anim.channels_editable_toggle LOCAL_EXACT slice + +- task: M16-GAP-00158 +- parent: M16-GAP-00157 +- status: in_progress +- gap: operator:anim.channels_editable_toggle +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_editable_toggle 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-00158-operator-anim.channels_editable_toggle.blend` +- Generator: `tools/web/generated/M16-GAP-00158.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-00158.py -- tests/files/web/generated/M16-GAP-00158-operator-anim.channels_editable_toggle.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00158 +node tools/web/check-generated-gap.mjs --task M16-GAP-00158 + +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-00158/` +- Status: `docs/status/M16-GAP-00158.md` +- Manifest: `tests/golden/M16-GAP-00158/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00158 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00159.md b/docs/tasks/M16-GAP-00159.md new file mode 100644 index 00000000..107005f4 --- /dev/null +++ b/docs/tasks/M16-GAP-00159.md @@ -0,0 +1,37 @@ +# M16-GAP-00159: operator:anim.channels_expand LOCAL_EXACT slice + +- task: M16-GAP-00159 +- parent: M16-GAP-00158 +- status: in_progress +- gap: operator:anim.channels_expand +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_expand 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-00159-operator-anim.channels_expand.blend` +- Generator: `tools/web/generated/M16-GAP-00159.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-00159.py -- tests/files/web/generated/M16-GAP-00159-operator-anim.channels_expand.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00159 +node tools/web/check-generated-gap.mjs --task M16-GAP-00159 + +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-00159/` +- Status: `docs/status/M16-GAP-00159.md` +- Manifest: `tests/golden/M16-GAP-00159/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00159 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00160.md b/docs/tasks/M16-GAP-00160.md new file mode 100644 index 00000000..129a075d --- /dev/null +++ b/docs/tasks/M16-GAP-00160.md @@ -0,0 +1,37 @@ +# M16-GAP-00160: operator:anim.channels_fcurves_enable LOCAL_EXACT slice + +- task: M16-GAP-00160 +- parent: M16-GAP-00159 +- status: in_progress +- gap: operator:anim.channels_fcurves_enable +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_fcurves_enable 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-00160-operator-anim.channels_fcurves_enable.blend` +- Generator: `tools/web/generated/M16-GAP-00160.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-00160.py -- tests/files/web/generated/M16-GAP-00160-operator-anim.channels_fcurves_enable.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00160 +node tools/web/check-generated-gap.mjs --task M16-GAP-00160 + +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-00160/` +- Status: `docs/status/M16-GAP-00160.md` +- Manifest: `tests/golden/M16-GAP-00160/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00160 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00161.md b/docs/tasks/M16-GAP-00161.md new file mode 100644 index 00000000..35041a93 --- /dev/null +++ b/docs/tasks/M16-GAP-00161.md @@ -0,0 +1,37 @@ +# M16-GAP-00161: operator:anim.channels_group LOCAL_EXACT slice + +- task: M16-GAP-00161 +- parent: M16-GAP-00160 +- status: in_progress +- gap: operator:anim.channels_group +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_group 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-00161-operator-anim.channels_group.blend` +- Generator: `tools/web/generated/M16-GAP-00161.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-00161.py -- tests/files/web/generated/M16-GAP-00161-operator-anim.channels_group.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00161 +node tools/web/check-generated-gap.mjs --task M16-GAP-00161 + +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-00161/` +- Status: `docs/status/M16-GAP-00161.md` +- Manifest: `tests/golden/M16-GAP-00161/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00161 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00162.md b/docs/tasks/M16-GAP-00162.md new file mode 100644 index 00000000..624b270d --- /dev/null +++ b/docs/tasks/M16-GAP-00162.md @@ -0,0 +1,37 @@ +# M16-GAP-00162: operator:anim.channels_move LOCAL_EXACT slice + +- task: M16-GAP-00162 +- parent: M16-GAP-00161 +- status: in_progress +- gap: operator:anim.channels_move +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_move 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-00162-operator-anim.channels_move.blend` +- Generator: `tools/web/generated/M16-GAP-00162.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-00162.py -- tests/files/web/generated/M16-GAP-00162-operator-anim.channels_move.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00162 +node tools/web/check-generated-gap.mjs --task M16-GAP-00162 + +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-00162/` +- Status: `docs/status/M16-GAP-00162.md` +- Manifest: `tests/golden/M16-GAP-00162/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00162 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00163.md b/docs/tasks/M16-GAP-00163.md new file mode 100644 index 00000000..d95509ab --- /dev/null +++ b/docs/tasks/M16-GAP-00163.md @@ -0,0 +1,37 @@ +# M16-GAP-00163: operator:anim.channels_rename LOCAL_EXACT slice + +- task: M16-GAP-00163 +- parent: M16-GAP-00162 +- status: in_progress +- gap: operator:anim.channels_rename +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_rename 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-00163-operator-anim.channels_rename.blend` +- Generator: `tools/web/generated/M16-GAP-00163.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-00163.py -- tests/files/web/generated/M16-GAP-00163-operator-anim.channels_rename.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00163 +node tools/web/check-generated-gap.mjs --task M16-GAP-00163 + +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-00163/` +- Status: `docs/status/M16-GAP-00163.md` +- Manifest: `tests/golden/M16-GAP-00163/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00163 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00164.md b/docs/tasks/M16-GAP-00164.md new file mode 100644 index 00000000..30eec237 --- /dev/null +++ b/docs/tasks/M16-GAP-00164.md @@ -0,0 +1,37 @@ +# M16-GAP-00164: operator:anim.channels_select_all LOCAL_EXACT slice + +- task: M16-GAP-00164 +- parent: M16-GAP-00163 +- status: in_progress +- gap: operator:anim.channels_select_all +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_select_all 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-00164-operator-anim.channels_select_all.blend` +- Generator: `tools/web/generated/M16-GAP-00164.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-00164.py -- tests/files/web/generated/M16-GAP-00164-operator-anim.channels_select_all.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00164 +node tools/web/check-generated-gap.mjs --task M16-GAP-00164 + +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-00164/` +- Status: `docs/status/M16-GAP-00164.md` +- Manifest: `tests/golden/M16-GAP-00164/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00164 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00165.md b/docs/tasks/M16-GAP-00165.md new file mode 100644 index 00000000..ca7e6f8a --- /dev/null +++ b/docs/tasks/M16-GAP-00165.md @@ -0,0 +1,37 @@ +# M16-GAP-00165: operator:anim.channels_select_box LOCAL_EXACT slice + +- task: M16-GAP-00165 +- parent: M16-GAP-00164 +- status: in_progress +- gap: operator:anim.channels_select_box +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_select_box 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-00165-operator-anim.channels_select_box.blend` +- Generator: `tools/web/generated/M16-GAP-00165.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-00165.py -- tests/files/web/generated/M16-GAP-00165-operator-anim.channels_select_box.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00165 +node tools/web/check-generated-gap.mjs --task M16-GAP-00165 + +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-00165/` +- Status: `docs/status/M16-GAP-00165.md` +- Manifest: `tests/golden/M16-GAP-00165/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00165 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00166.md b/docs/tasks/M16-GAP-00166.md new file mode 100644 index 00000000..4a25ca6c --- /dev/null +++ b/docs/tasks/M16-GAP-00166.md @@ -0,0 +1,37 @@ +# M16-GAP-00166: operator:anim.channels_select_filter LOCAL_EXACT slice + +- task: M16-GAP-00166 +- parent: M16-GAP-00165 +- status: in_progress +- gap: operator:anim.channels_select_filter +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_select_filter 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-00166-operator-anim.channels_select_filter.blend` +- Generator: `tools/web/generated/M16-GAP-00166.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-00166.py -- tests/files/web/generated/M16-GAP-00166-operator-anim.channels_select_filter.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00166 +node tools/web/check-generated-gap.mjs --task M16-GAP-00166 + +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-00166/` +- Status: `docs/status/M16-GAP-00166.md` +- Manifest: `tests/golden/M16-GAP-00166/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00166 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00167.md b/docs/tasks/M16-GAP-00167.md new file mode 100644 index 00000000..5e333692 --- /dev/null +++ b/docs/tasks/M16-GAP-00167.md @@ -0,0 +1,37 @@ +# M16-GAP-00167: operator:anim.channels_setting_disable LOCAL_EXACT slice + +- task: M16-GAP-00167 +- parent: M16-GAP-00166 +- status: in_progress +- gap: operator:anim.channels_setting_disable +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_setting_disable 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-00167-operator-anim.channels_setting_disable.blend` +- Generator: `tools/web/generated/M16-GAP-00167.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-00167.py -- tests/files/web/generated/M16-GAP-00167-operator-anim.channels_setting_disable.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00167 +node tools/web/check-generated-gap.mjs --task M16-GAP-00167 + +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-00167/` +- Status: `docs/status/M16-GAP-00167.md` +- Manifest: `tests/golden/M16-GAP-00167/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00167 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00168.md b/docs/tasks/M16-GAP-00168.md new file mode 100644 index 00000000..fb39bbc0 --- /dev/null +++ b/docs/tasks/M16-GAP-00168.md @@ -0,0 +1,37 @@ +# M16-GAP-00168: operator:anim.channels_setting_enable LOCAL_EXACT slice + +- task: M16-GAP-00168 +- parent: M16-GAP-00167 +- status: in_progress +- gap: operator:anim.channels_setting_enable +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_setting_enable 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-00168-operator-anim.channels_setting_enable.blend` +- Generator: `tools/web/generated/M16-GAP-00168.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-00168.py -- tests/files/web/generated/M16-GAP-00168-operator-anim.channels_setting_enable.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00168 +node tools/web/check-generated-gap.mjs --task M16-GAP-00168 + +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-00168/` +- Status: `docs/status/M16-GAP-00168.md` +- Manifest: `tests/golden/M16-GAP-00168/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00168 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00169.md b/docs/tasks/M16-GAP-00169.md new file mode 100644 index 00000000..6655b424 --- /dev/null +++ b/docs/tasks/M16-GAP-00169.md @@ -0,0 +1,37 @@ +# M16-GAP-00169: operator:anim.channels_setting_toggle LOCAL_EXACT slice + +- task: M16-GAP-00169 +- parent: M16-GAP-00168 +- status: in_progress +- gap: operator:anim.channels_setting_toggle +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_setting_toggle 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-00169-operator-anim.channels_setting_toggle.blend` +- Generator: `tools/web/generated/M16-GAP-00169.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-00169.py -- tests/files/web/generated/M16-GAP-00169-operator-anim.channels_setting_toggle.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00169 +node tools/web/check-generated-gap.mjs --task M16-GAP-00169 + +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-00169/` +- Status: `docs/status/M16-GAP-00169.md` +- Manifest: `tests/golden/M16-GAP-00169/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00169 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00170.md b/docs/tasks/M16-GAP-00170.md new file mode 100644 index 00000000..a75281f5 --- /dev/null +++ b/docs/tasks/M16-GAP-00170.md @@ -0,0 +1,37 @@ +# M16-GAP-00170: operator:anim.channels_ungroup LOCAL_EXACT slice + +- task: M16-GAP-00170 +- parent: M16-GAP-00169 +- status: in_progress +- gap: operator:anim.channels_ungroup +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_ungroup 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-00170-operator-anim.channels_ungroup.blend` +- Generator: `tools/web/generated/M16-GAP-00170.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-00170.py -- tests/files/web/generated/M16-GAP-00170-operator-anim.channels_ungroup.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00170 +node tools/web/check-generated-gap.mjs --task M16-GAP-00170 + +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-00170/` +- Status: `docs/status/M16-GAP-00170.md` +- Manifest: `tests/golden/M16-GAP-00170/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00170 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00171.md b/docs/tasks/M16-GAP-00171.md new file mode 100644 index 00000000..fb79d5e6 --- /dev/null +++ b/docs/tasks/M16-GAP-00171.md @@ -0,0 +1,37 @@ +# M16-GAP-00171: operator:anim.channels_view_selected LOCAL_EXACT slice + +- task: M16-GAP-00171 +- parent: M16-GAP-00170 +- status: in_progress +- gap: operator:anim.channels_view_selected +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.channels_view_selected 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-00171-operator-anim.channels_view_selected.blend` +- Generator: `tools/web/generated/M16-GAP-00171.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-00171.py -- tests/files/web/generated/M16-GAP-00171-operator-anim.channels_view_selected.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00171 +node tools/web/check-generated-gap.mjs --task M16-GAP-00171 + +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-00171/` +- Status: `docs/status/M16-GAP-00171.md` +- Manifest: `tests/golden/M16-GAP-00171/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00171 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00172.md b/docs/tasks/M16-GAP-00172.md new file mode 100644 index 00000000..29abbbbf --- /dev/null +++ b/docs/tasks/M16-GAP-00172.md @@ -0,0 +1,37 @@ +# M16-GAP-00172: operator:anim.clear_useless_actions LOCAL_EXACT slice + +- task: M16-GAP-00172 +- parent: M16-GAP-00171 +- status: in_progress +- gap: operator:anim.clear_useless_actions +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.clear_useless_actions 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-00172-operator-anim.clear_useless_actions.blend` +- Generator: `tools/web/generated/M16-GAP-00172.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-00172.py -- tests/files/web/generated/M16-GAP-00172-operator-anim.clear_useless_actions.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00172 +node tools/web/check-generated-gap.mjs --task M16-GAP-00172 + +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-00172/` +- Status: `docs/status/M16-GAP-00172.md` +- Manifest: `tests/golden/M16-GAP-00172/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00172 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00173.md b/docs/tasks/M16-GAP-00173.md new file mode 100644 index 00000000..1fe832a9 --- /dev/null +++ b/docs/tasks/M16-GAP-00173.md @@ -0,0 +1,37 @@ +# M16-GAP-00173: operator:anim.copy_driver_button LOCAL_EXACT slice + +- task: M16-GAP-00173 +- parent: M16-GAP-00172 +- status: in_progress +- gap: operator:anim.copy_driver_button +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.copy_driver_button 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-00173-operator-anim.copy_driver_button.blend` +- Generator: `tools/web/generated/M16-GAP-00173.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-00173.py -- tests/files/web/generated/M16-GAP-00173-operator-anim.copy_driver_button.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00173 +node tools/web/check-generated-gap.mjs --task M16-GAP-00173 + +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-00173/` +- Status: `docs/status/M16-GAP-00173.md` +- Manifest: `tests/golden/M16-GAP-00173/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00173 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/docs/tasks/M16-GAP-00174.md b/docs/tasks/M16-GAP-00174.md new file mode 100644 index 00000000..ee479719 --- /dev/null +++ b/docs/tasks/M16-GAP-00174.md @@ -0,0 +1,37 @@ +# M16-GAP-00174: operator:anim.driver_button_add LOCAL_EXACT slice + +- task: M16-GAP-00174 +- parent: M16-GAP-00173 +- status: in_progress +- gap: operator:anim.driver_button_add +- ownerFamily: OPERATOR +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable operator:anim.driver_button_add 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-00174-operator-anim.driver_button_add.blend` +- Generator: `tools/web/generated/M16-GAP-00174.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-00174.py -- tests/files/web/generated/M16-GAP-00174-operator-anim.driver_button_add.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00174 +node tools/web/check-generated-gap.mjs --task M16-GAP-00174 + +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-00174/` +- Status: `docs/status/M16-GAP-00174.md` +- Manifest: `tests/golden/M16-GAP-00174/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00174 --write` +- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence. diff --git a/tests/files/web/generated/M16-GAP-00139-operator-action.select_leftright.blend b/tests/files/web/generated/M16-GAP-00139-operator-action.select_leftright.blend new file mode 100644 index 0000000000000000000000000000000000000000..01431451dfd77953e8d68b45f3c539e55675e864 GIT binary patch literal 86867 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:Uby(Ob}f{~_O8l(H1=m@z*Lt_O@ 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 C;b|EF literal 0 HcmV?d00001 diff --git a/tests/files/web/generated/M16-GAP-00141-operator-action.select_linked.blend b/tests/files/web/generated/M16-GAP-00141-operator-action.select_linked.blend new file mode 100644 index 0000000000000000000000000000000000000000..be2dbe03bd13e28058835a0b1c691a6f172d09ba GIT binary patch literal 86861 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�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 literal 0 HcmV?d00001 diff --git a/tests/files/web/generated/M16-GAP-00142-operator-action.select_more.blend b/tests/files/web/generated/M16-GAP-00142-operator-action.select_more.blend new file mode 100644 index 0000000000000000000000000000000000000000..f49de9fed2b773f7e635070133312808b312814a GIT binary patch literal 86855 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

7#$mWsJaNo~uFor8b+O76Ig0WHbhG^pL5Eja0 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 literal 0 HcmV?d00001 diff --git a/tests/files/web/generated/M16-GAP-00143-operator-action.snap.blend b/tests/files/web/generated/M16-GAP-00143-operator-action.snap.blend new file mode 100644 index 0000000000000000000000000000000000000000..67c44a65c5724a2e1b0988142e9ca01ec8873384 GIT binary patch literal 86847 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